여러 가지 할 수 있어요.

14297 단어 Pythontech
파이토존 특유의 문법적 내용을 총결하다.

표현이 포함된 것은 무엇입니까?


표현은 목록, 집합, 산열 등을 생성할 수 있는 문법을 포함한다.
for 문장 순환을 사용하여 목록을 만드는 등 처리를 더욱 간결하게 합니다.또 포함식으로 쓰면 실행 속도도 높아진다.
예를 들어 0~10의 서열 번호 목록을 원할 때 for문으로 다음과 같이 처리한다.
my_list = []
for i in range(10):
    my_list.append(i)
# my_list: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
이것을 포함하는 방식으로 쓰면 한 줄로 간결하게 쓸 수 있다.
my_list = [i for i in range(10)]
# my_list: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
태그 포함 이외에도 다양한 처리를 수행할 수 있습니다.나중에 소개할게요.

갖가지 포함 표현


조건의 불일치를 가하다


내부 패키지는 내부에서 if를 사용하여 목록의 필터를 처리하는 것을 나타낸다.
my_list에서 홀수의 홀수만 추출리스트를 만들 때
for 사용 예
my_list = [1, 2, 3, 4, 5]
odd_list = []
for i in my_list:
    if i % 2 != 0:
        odd_list.append(i)
# odd_list: [1, 3, 5]
태그가 포함된 예 사용
my_list = [1, 2, 3, 4, 5]
odd_list = [i for i in my_list if i % 2 != 0]
# odd_list: [1, 3, 5]

결과를 처리하다


내부 패키지는 결과를 처리할 수도 있고 맵을 처리할 수도 있음을 나타낸다.
my_리스트의 값을 대문자로 쓰는 upper리스트를 만들 때
for문장의 예를 사용하다
my_list = ['a', 'b', 'c']
upper_list = []
for s in my_list:
   upper_list.append(s.upper())
# upper_list: ['A', 'B', 'C']
태그가 포함된 예 사용
my_list = ['a', 'b', 'c']
upper_list = [s.upper() for s in my_list]
# upper_list: ['A', 'B', 'C']

네스트된 루프 작업


루프 네스트도 포함할 수 있습니다.
2차원 리스트를 만드는 경우.
for 문 사용 예
my_list = []
for x in range(2):
    for y in range(2):
        my_list.append([x, y])
# my_list: [[0, 0], [0, 1], [1, 0], [1, 1]]
태그가 포함된 예 사용
my_list = [[x, y] for x in range(2) for y in range(2)]
# my_list: [[0, 0], [0, 1], [1, 0], [1, 1]]

해싱 작성


포함된 방식으로 해시를 만들 수도 있다.
my_list 값을 키로 하고, 인덱스를 값으로 해시를 만듭니다
for 사용 예
my_list = ["foo", "bar", "baz"]
my_dict = {}
for val, index in enumerate(my_list):
    my_dict[val] = index
# my_dict: {'foo': 0, 'bar': 1, 'baz': 2}
태그가 포함된 예 사용
my_list = ["foo", "bar", "baz"]
my_dict = {val:index for val, index in enumerate(my_list)}
# my_dict: {'foo': 0, 'bar': 1, 'baz': 2}

배경을 꾸미다


패키지 표시로 패키지를 만들 수도 있다.
my_list의 각 값에 각 값을 2의 값으로 곱한 집합 시
for 사용 예
my_list = [1, 2, 2, 3, 4, 3]
my_set = set([])
for i in my_list:
    my_set.add(i * 2)
# my_set: {2, 4, 6, 8}
태그가 포함된 예 사용
my_list = [1, 2, 2, 3, 4, 3]
my_set = { i * 2 for i in my_list }
# my_set: {2, 4, 6, 8}

생성기 만들기


포함된 방식으로 생성기를 만들 수도 있다.
0~9값의 시퀀스 번호를 되돌려주는 my일반 제작 시
for의 예
def build_generator():
    for i in range(10):
        yield i
my_generator = build_generator()
# <generator object my_generator at 0x1103335f0>
태그가 포함된 예
my_generator = (i for i in range(10))
# <generator object my_generator at 0x1103335f0>

끝맺다


처음 봤을 때 "읽기 어려워요."그렇게 생각하지만 이해하면 상당히 편해요.
맵 처리와 Filter 처리도 가능합니다.나는 능숙하게 사용하고 싶다.

참고 자료

  • Pythhon 실천 입문 - 언어 능력을 자극하고 개발 효율을 높이다: 서적 소개 | 기술 평론사
  • 좋은 웹페이지 즐겨찾기