Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 프로그래머
- 캠핑장
- 캠핑
- 에어텐트
- 코딩
- 텐트
- android log
- 프로그래밍
- arm trustzone 강의
- 게임 NFT
- ARM Trustzone
- arm trust zone 강의
- 면접
- 언어치료
- ARM Trustzone 설명
- nft
- 초캠중고
- 아웃웰
- ARM Trust Zone
- ARM trustzone 내용
- 중고텐트
- 보안강의
- 개발자
- adb logcat
- 반고
- threadtime
- 프로그래머면접
- setns
- 개발자면접
- 주식선택기준
Archives
- Today
- Total
콩딱일상
List Comprehension(리스트 컴프리핸션) 본문
리스트 컴프리핸션은 파이썬을 사용하는 사람들이 길게 쓰는걸 싫어해서 줄인 표현식 같은걸로 생각됩니다.
그런데 이게 가독성이 좋은지는 사실 잘 모르겠기 합니다.
우선 Syntax는 조금 복잡해 보일수 있지만 아래와 같습니다.
[표현식 {조건식} 반복문(1..*) 추가 조건식]
몇번 테스트를 돌리다 보니까 이게 맞는것 같은데 정확하진 않습니다.
아래의 예제는 https://docs.python.org/3.10/tutorial/datastructures.html 에서 가져왔습니다.
[(x, y) for x in [1,2,3] for y in [3,1,4] if x != y]
for x in [1,2,3]
for y in [3,1,4]
if x != y:
append((x, y))
이렇게 보면은 참 이해하기 쉬운데 저 긴줄을 한번에 보기는 조금 까다로운것 같습니다.
for문은 차례로 읽으면 되며 1개의 for문을 만날때 마다 deps가 들어간다고 생각하면 됩니다. 위의 예제는 for가 2개니 2중 for문이 됩니다.
표현식을 넣은 예제를 살펴보겠습니다.
numbers = [1, 2, 3, 4, 5]
result = [num if num % 2 == 0 else num + 10 for num in numbers if num % 3 == 0]
result = [13]
for num in [1,2,3,4,5]
if num % 3 == 0:
if num % 2 == 0:
append(num)
else:
append(num + 10)
저는 이러한 느낌으로 받아들였습니다.
'프로그래밍 언어 > Python' 카테고리의 다른 글
package __init__.py의 의미와 사용 (0) | 2024.01.10 |
---|