색인과 슬라이스입니다
파이썬 목록의 인덱스와 슬라이스는 파이썬에서 목록의 임의의 요소를 가져올 수 있는 매우 강력한 기능입니다.일반적인 양성 인덱스를 지원하는 것 외에도 파이썬은 음성 인덱스와 슬라이스도 지원합니다.
올바른 색인입니다
a_list = [100, 200, 300, 400, 500, 600]
print(a_list[0]) # 출력 100입니다.
print(a_list[1]) # 200을 출력합니다.
print(a_list[2]) # 출력 300입니다
음의 색인입니다
a_list = [100, 200, 300, 400, 500, 600]
print(a_list[-1]) # 출력 600입니다.
print(a_list[-3]) # 400을 출력합니다
다음은 목록 슬라이스의 예입니다
a_list = [1, 2, 5, 10, 20, 30]
b_list = a_list[1:3] # 생성 [2, 5] 입니다.
c_list = a_list[4:] # 생성 [20, 30] 입니다.
d_list = a_list[-4::1] # 생성 [5, 10, 20] 입니다.
e_list = a_list[-1:] # 생성 [30] 입니다
문자열 정렬입니다
문자열 포맷은 명령줄 도구 개발에 매우 중요합니다. str 클래스에는 텍스트 정렬을 위한 기본 방법이 포함되어 있습니다. 왼쪽 정렬, 오른쪽 정렬 또는 중앙 정렬입니다
str.ljust (width [, fillchar]) # 왼쪽 정렬입니다.
str.rjust (width [, fillchar]) # 오른쪽 정렬합니다
str.center (width [, fillchar]) # 가운데 정렬합니다
digit_str.zfill(width) #을 "0"으로 채웁니다
다음은 몇 가지 예입니다
new_str = 'Help!'.center(10, '#')
print(new_str)
이 예의 출력은 다음과 같습니다
##Help!###
new_str = '750'.rjust(6, '0')
print(new_str)
이 예제의 출력은 다음과 같습니다
000750
위의 예는 단순한 문자열 포맷의 샘플일 뿐이며, '고차 Python: 코드 정밀도의 길'에는 더 복잡한 포맷 방법도 많이 소개되어 있습니다.
목록 도출식 & 사전 도출식입니다
파이썬 2.0 버전에 도입된 가장 중요한 기능 중 하나는 목록 도출입니다.목록에서 일련의 값을 생성하는 컴팩트한 구문을 제공합니다.사전, 집합(set) 및 기타 유형의 집합에도 적용할 수 있습니다.
a_list에 있는 각 요소의 제곱을 포함하는 새로운 목록을 만든다고 가정하면 다음과 같이 구현될 수 있습니다
b_list = [ ]
for i in a_list:
b_list.append(i * i)
a_list에 요소 [1, 2, 3]가 포함되어 있는 경우 이러한 문장의 결과는 [1, 4, 9]를 포함하는 새 목록을 만들고 이 목록을 변수 b_list에 할당하는 것입니다.이 경우 해당 목록 도출식은 다음과 같습니다
b_list = [i * i for i in a_list]
메타그룹 목록이 사전으로 변환된다고 가정하면, 메타그룹 목록은 다음과 같습니다
vals_list = [ ('pi', 3.14), ('phi', 1.618) ]
키 값 표현(i[0]:i[1])의 콜론(:) 사용에 주의하십시오.
가변 길이 인자 목록입니다
파이썬의 가장 일반적인 기능 중 하나는 가변 길이 매개변수 목록에 액세스할 수 있다는 것입니다.이 기능을 사용하면 내장된 print 함수와 같이 모든 수의 매개변수를 처리할 수 있습니다.가변 길이 매개변수의 특성은 명명된 매개변수로 확장될 수도 있습니다
def func_name([ordinary_args,] *args):
statements
여기서 중괄호는 *args 앞에 임의의 수의 일반 매개변수가 있을 수 있음을 나타내며 여기서는 ordinary_args로 표시됩니다.이러한 매개변수는 선택 사항입니다.다음은 예시 코드입니다
def my_var_func(*args):
print('The number of args is', len(args))
for item in args:
print(items)
이 함수 my_var_func는 임의의 길이의 매개변수 목록을 수용할 수 있습니다
>>> my_var_func(10, 20, 30, 40)
The number of args is 4
10
20
30
40
가변 길이 매개변수 목록은 다음과 같이 키워드 매개변수도 지원합니다
def pr_named_vals(**kwargs):
for k in kwargs:
print(k, ':', kwargs[k])
위의 함수는 kwargs가 나타내는 사전 매개변수를 통과하고 들어오는 매개변수의 키( 매개변수 이름에 해당)와 해당 값을 인쇄합니다
For example:
>>> pr_named_vals(a=10, b=20, c=30)
a : 10
b : 20
c : 30
args와 kwargs를 조합하여 사용할 수 있는데, 다음은 하나의 예입니다
def pr_vals_2(*args, **kwargs):
for i in args:
print(i)
for k in kwargs:
print(k, ':', kwargs[k])
pr_vals_2(1, 2, 3, -4, a=100, b=200)
실행 시, 이 프로그램은 다음 내용을 출력합니다
1
2
3
-4
a : 100
b : 200
numpy를 사용하여 선형 대수 연산을 수행합니다
선형 대수 연산은 딥 러닝에서 매우 중요하며 numpy 라이브러리는 파이썬에 효율적인 선형 대수 연산 모듈을 제공합니다.
numpy의 선형 대수 모듈은 매우 완벽하며 점적 계산을 예로 들어 소개합니다.
numpy를 사용할 때 점적 함수 dot를 사용하여 점적을 계산할 수 있습니다
numpy.dot(A, B, out=None)
A와 B는 점적 연산을 수행하는 두 개의 배열이고, out 매개변수(지정된 경우)는 결과를 저장하는 데 사용되는 올바른 배열이며, '올바른 모양'은 A와 B의 모양에 따라 다릅니다.
두 개의 1차원 배열의 점적은 매우 간단합니다.배열의 길이는 같아야 합니다.점적 계산은 A의 각 요소와 B의 해당 요소를 곱한 다음 이러한 곱을 합산하여 스칼라 값을 얻는 것입니다
D. P. = A[0]*B[0] + A[1]*B[1] + ... + A[N-1] * B[N-1]
예:
import numpy as np
A = np.ones(5)
B = np.arange(5)
print(A, B)
[1. 1. 1. 1. 1.] [0 1 2 3 4]
np.dot(A, A)
5.0
np.dot(A, B)
10.0
np.dot(B, B)
30
2차원 행렬 사이의 점적은 비교적 복잡합니다.배열 간의 일반적인 곱셈과 마찬가지로 두 배열의 모양은 호환되어야 하지만 이는 차원 중 하나에서 동일하기만 하면 됩니다.
다음은 2D 배열에 대한 점적 적용을 설명하는 일반적인 모드입니다
(A, B) * (B, C) => (A, C)
아래의 2×3 배열에 대해 생각하고 3×2 배열과 결합하면 그 점적은 2×2 배열입니다
A = np.arange(6).reshape(2,3)
B = np.arange(6).reshape(3,2)
C = np.dot(A, B)
print(A, B, sep='\n\n')
print('\nDot product:\n', C)
[[0 1 2]
[3 4 5]]
[[0 1]
[2 3]
[4 5]]
Dot product:
[[10 13]
[28 40]]
'개발 꿀팁 > PYTHON' 카테고리의 다른 글
파이썬은 어떤 장점이 있나요? (0) | 2022.12.09 |
---|---|
파이썬 인터프리터는 무엇입니까? (1) | 2022.12.09 |
파이썬 그림 기초입니다 (0) | 2022.12.07 |
Python matplotlib 그림 그리기 (첫 번째, 선 색상, 유형 설정) (0) | 2022.12.07 |
파이썬 묘화 기법 (고화질 그림) (0) | 2022.12.07 |