[Python] 반복문

shlim55·2025년 11월 2일

Python

목록 보기
8/25
post-thumbnail

03-3 for문

for 변수 in 리스트(또는 튜플, 문자열):
    수행할_문장1
    수행할_문장2
    ...
  1. 전형적인 for 문
>>> test_list = ['one', 'two', 'three'] 
>>> for i in test_list: 
...     print(i)
... 

one
two
three

  1. 다양한 for 문의 사용
>>> a = [(1,2), (3,4), (5,6)]
>>> for (first, last) in a:
...     print(first + last)
...

3
7
11
튜플의 각
First+last 값을 더해서 출력

For문 While문 차이

For문 어떤 리스트나 문자열 튜플 여러 개 자료가 담긴 것을 하나씩 뽑아 와서 쓰는 것

While문 어떤 상황을 주어지고 계속 반복하는거를 기본으로 해서 그걸 빠져 나오거나 트러질때 끝나거나 이런걸 만드는게 While문

For문은 리스트를 돌때 쓴다

변수를 맞춘다는 건 모양대로 굳이 나눠 주고 싶을 때 그때 이렇게 두개를 써주면
퍼스트 세컨드 둘다 담아서 하나써 뽑아줄수 있다

a = [(1,2), (3,4), (5,6)]
for (first, second) in a:
    print(first)
    print(second)

1
2
3
4
5
6

# marks1.py
marks = [90, 25, 67, 45, 80]   # 학생들의 시험 점수 리스트
number = 0   # 학생에게 붙여 줄 번호
for mark in marks:   # 90, 25, 67, 45, 80을 순서대로 mark에 대입
    number = number +1 
    if mark >= 60: 
        print("%d번 학생은 합격입니다." % number)
    else: 
        print("%d번 학생은 불합격입니다." % number)

for 문과 continue 문

# marks2.py
marks = [90, 25, 67, 45, 80]
number = 0 
for mark in marks: 
    number = number +1 
    if mark < 60:
        continue 
    print("%d번 학생 축하합니다. 합격입니다. " % number)

점수가 60점 미만인 사람은 출력 안하는 반복문
1번 학생 축하합니다. 합격입니다.
3번 학생 축하합니다. 합격입니다.
5번 학생 축하합니다. 합격입니다.

for 문과 함께 자주 사용하는 range 함수
for와 range 함수를 사용하면 1부터 10까지 더하는 것을 다음과 같이 쉽게 구현할 수 있다.

add = 0 
for i in range(1, 11): 
    add = add + i 
    print(add)

Range를 쓰는 이유는 리스트를 쭉 길게 쓰기 귀찮으니까 쓰는 것

for와 range를 이용한 구구단

>>> for i in range(2,10):        # 1번 for문
...     for j in range(1, 10):   # 2번 for문
...         print(i*j, end=" ") 
...     print('') 
... 

End의 역할은 한줄씩 출력할때 마다 enter 하는게 아닌 그냥 띄어쓰기로 대체하게 이런 뜻
Print('')의 역할은 한줄 띄겠다는 뜻

Print가 기본적으로 enter를 포함함 그거를 막으려면 end를 쓰는건데..
End="\n" 아님 end=" " 추가 하기만해도 띄어쓰기

리스트 컴프리헨션 사용하기

>>> a = [1,2,3,4]
>>> result = []
>>> for num in a:
...     result.append(num*3)
...
>>> print(result)
[3, 6, 9, 12]

빈 리스트에 하나씩 3을 곱해서 3 6 9 12가 추가가 됨

이렇게도 가능함

>>> a = [1,2,3,4]
>>> result = [num * 3 for num in a]
>>> print(result)
[3, 6, 9, 12]

대충 3곱한거를 넣을거다 근데 그거는 어디서 나오냐 뒤에서 나옵니다
하나더 조건이 추가 된 것.

한마디로 이 코드문 다시 쓴거라고 보면 됨

result = []
for num in a:
    if num%2 == 0:
        result.append(num*3)
profile
A Normal Programmer

0개의 댓글