혼작 공부하는 머신러닝을 공부하다가 처음보는 파이썬 용법이 나와서 그 부분만 따로 공부했습니다
파이썬을 아주 기초부분만 다루는 책만 공부해봐서 이런 용법은 처음 봤습니다
fish_data = [[l, w] for l, w in zip(length, weight)]
구문 fish_data = [[l, w] for l, w in zip(length, weight)] 구문을 더 잘 이해하기 위해 더 작은 부분으로 분해해 보겠습니다.
zip(length, weight) - zip() 함수는 두 개 이상의 매개변수(이 경우 length와 weight)을 취하고 각 매개변수의 요소를 집계하는 반복자를 반환합니다. 이 경우 길이와 무게의 해당 요소를 튜플로 집계합니다. 예를 들어 길이가 [1, 2, 3]이고 무게가 [10, 20, 30]이면 zip(length, weight)는 [(1, 10), (2, 20), (3, 30)]을 반환합니다.
for l, w in zip(length, weight) - 이것은 zip()이 반환한 튜플을 반복하는 for 루프입니다. 각 반복에서 l 변수는 튜플의 첫 번째 요소에 할당되고 w 변수는 튜플의 두 번째 요소에 할당됩니다.
[l, w] - 이것은 zip()에 의해 반환된 각 튜플에 대해 두 개의 요소 l과 w로 새 리스트를 만드는 리스트 comprehension입니다.
[[l, w] for l, w in zip(length, weight)] - 리스트의 리스트를 생성하는 중첩 리스트 comprehension입니다. 내부 리스트 [l, w]는 zip()이 반환한 각 튜플에 대해 생성되고 외부 리스트에는 모든 내부 목록이 포함됩니다.
마지막으로 목록의 결과 목록이 변수 fish_data에 할당됩니다.
따라서 전반적으로 이 구문은 두 개의 목록 길이와 무게를 취하고 zip()과 목록 내포를 사용하여 목록 fish_data의 새 목록을 생성합니다. 여기서 각 내부 목록에는 길이와 무게의 해당 요소가 포함됩니다.
이번 공부로 comprehension이 뭔지 알게 됐습니다
'프로그래밍 > 파이썬 공부' 카테고리의 다른 글
웹 크롤링을 할 때 법적으로 주의해야 하는 사항 (0) | 2023.03.07 |
---|---|
파이썬 웹 크롤링 학습 과정 (0) | 2023.03.07 |
모두의 알고리즘 - 리스트 공부 (0) | 2022.05.09 |
[파이썬 공부] Python 타자 게임 만들기와 format 함수 (0) | 2021.12.28 |
[파이썬 공부] AttributeError의 원인과 해결 과정 (0) | 2021.12.27 |