for 문(for statements)
for문의 기본 구조
for 변수 in 리스트(또는 튜플, 문자열):
수행문장
...
정확히는 리스트나 튜플, 문자열과 같은 반복 가능한(iterable) 객체에서 for문을 사용할 수 있다.
example
test_list = ['one', 'two', 'three'] for i in test_list: print(i) # one, two, three a = [(1, 2), (3, 4), (5, 6)] for (first, last) in a: print(f'({first}, {last})') # (1, 2) (3, 4) (5, 6) marks = [70, 30, 100, 65, 59] number = 0 for mark in marks: number += 1 if mark >= 60: print(f'{number}번째 학생의 점수는 {mark}점이므로 합격입니다') else: print(f'{number}번째 학생의 점수는 {mark}점이므로 불합격입니다')
for문에서도 continue문을 사용할 수 있다
example
marks = [70, 30, 100, 65, 59] number = 0 for mark in marks: number += 1 if mark < 60: continue print(f'{number}번째 학생의 점수는 {mark}점이므로 합격입니다')
for문에서 자주 사용하는 range함수
a = range(10)
a
res : range(0, 10) # 0부터 10 미만의 숫자를 포함하는 range 객체
b = range(2, 20, 2) # 2부터 간격(step) 2로, 즉 2, 4, 6, 8... 20 미만의 숫자 포함
ex)
add = 0
for i in range(1, 11):
add += i
print(add)
res : 55
enumerate 함수
for (idx, data) in enumerate(iterable)
--> 인덱와 iterable이 포함하고있는 data를 (idx, data) 튜플로 packing
for문 안에 for문 사용하기
- for와 range를 이용해 구구단 출력하기
for i in range(1, 10):
for j in range(1, 10):
print(i * j, end = " ")
print('')
리스트 내포 사용하기
a = [1, 2, 3, 4] result = [] for num in a: result.append(num*3)
위 코드를 리스트 내포를 사용해 아래처럼 사용할 수 있다.
a = [1, 2, 3, 4] result = [num * 3 for num in a]
만약 짝수에만 3을 곱하고 싶으면
result = [num * 3 for num in a if num % 2 == 0] 으로 사용
* 리스트 내포의 형식
```python
[표현식 for 항목 in 반복 가능 객체 if 조건]
2개 이상의 for문도 가능하다
[표현식 for 항목1 in 반복가능객체 if 조건 1 for 항목 2 in 반복가능객체 if 조건 2 for ...]
example
ex) 구구단 result = [x * y for x in range(1, 10) for y in range(1, 10)]
참조) Do it! 점프 투 파이썬 (박응용 지음)
'Programming Language > Python' 카테고리의 다른 글
[Python] 14. 사용자 입력 (0) | 2023.11.05 |
---|---|
[Python] 13. 함수(function) (0) | 2023.11.05 |
[Python] 11. while 문(while statements) (0) | 2023.11.05 |
[Python] 10. if 문(if statements) (0) | 2023.11.05 |
[Python Advanced] Object(객체) 저장 구조에 대한 탐구 (0) | 2023.11.05 |