Python/개요 및 문법

제어문 - 반복문

Bambi97 2024. 9. 25. 16:14

1. while문

특정 조건이 True인 동안 계속 반복하는 반복문

# True를 넣어버리면 무한 반복됨
while True:
  print('무한 반복됨')
<결과 콘솔>
무한 반복됨
무한 반복됨
무한 반복됨
무한 반복됨
무한 반복됨
...


# 5회 반복해보기
i = 1
while i <= 5:
  print('Hello Python')
  i += 1

<결과 콘솔>
Hello Python
Hello Python
Hello Python
Hello Python
Hello Python


# 1부터 10까지의 합
i = 1
sum = 0

while i < 10:
  sum += i
  i += 1
print(sum)

<결과 콘솔>
45


# 1~100까지의 짝수의 합
i = 1
sum = 0

while i <= 100:
  if i % 2 == 0:
    sum += i
  i += 1
print(sum)

<결과 콘솔>
2550


# 원하는 숫자를 입력하면 해당 숫자의 구구단을 출력
dan = int(input('원하는 단을 숫자만 입력하세요.').strip())
i = 1

while i < 10:
  print(f'{dan} * {i} = {dan * i}')
  i += 1

<결과 콘솔>
2 * 1 = 2
2 * 2 = 4
2 * 3 = 6
...

 

* break 키워드

현재 진행중인 루프의 반복문을 탈출하는 기능

# 무한루프 소프트웨어를 종료하는 break 키워드

while True:
  num = int(input('짝수를 입력해주세요.').strip())
  if num % 2 == 0:
    print('짝수입니다.')
    print('프로그램을 종료합니다.')
    break;

<결과 콘솔>
짝수를 입력해주세요.1
짝수를 입력해주세요.3
짝수를 입력해주세요.5
짝수를 입력해주세요.6
짝수입니다.
프로그램을 종료합니다.

 

2, for 문

순서가 있는 컬렉션의 각 항목에 대해 반복 작업을 수행하는 반복문

지정된 반복횟수를 가질 때 주로 사용

for 요소 in 시퀀스:
  #요소에 대한 작업
  ...
 
 
 # for문 기초
for s in "Hello":
  print(s)

<결과 콘솔>
H
e
l
l
o

# 리스트를 출력해보기
list1 = [10, 20, 30, 40]
for li in list1:
  print(li)

<결과 콘솔>
10
20
30
40

 

* range() 함수

# range() 함수 : 파이썬에서 순차적인 정수 시퀀스를 생성하는 함수
 range([start], stop, [step])
 (start 기본값: 0)
 (step 기본값: 1)


for n in range(10): # range(0, 10, 1)
  print(n, end=' ')

<결과 콘솔>
0 1 2 3 4 5 6 7 8 9 


# start값
for n in range(5, 10): # range(5, 10, 1)
  print(n, end=' ')

<결과 콘솔>
5 6 7 8 9


# step값
for n in range(0, 10, 2):
  print(n, end=' ')

<결과 콘솔>
0 2 4 6 8

 

* enumerate() 함수

반복문을 사용할 때 인덱스와 값을 함께 가져오기 위해 사용되는 함수

# enumerate(시퀀스, [start])
# start 기본값 : 0

# 기본적인 사용
for e in enumerate('hello', 0):
  print(e)

<결과 콘솔>
(0, 'h')
(1, 'e')
(2, 'l')
(3, 'l')
(4, 'o')


# 리스트 출력
list1 = [10,20,30,40]

for e in enumerate(list1):
 print(e)

<결과 콘솔>
(0, 10)
(1, 20)
(2, 30)
(3, 40)

 

* zip() 함수

여러 개의 컬렉션을 동시에 병렬적으로 처리하는 함수

 

3. 중첩 반복문

하나의 반복문 안에 다른 반복문이 포함된 구조

for 외부변수 in 외부시퀀스:
 for 내부변수 in 내부시퀀스:
  내부 반복문 코드...
 외부 반복문 코드...


for i in range(5):
  for j in range(5):
    print('🎃', end='')
  print()

<결과 콘솔>
🎃🎃🎃🎃🎃
🎃🎃🎃🎃🎃
🎃🎃🎃🎃🎃
🎃🎃🎃🎃🎃
🎃🎃🎃🎃🎃


for i in range(5):
  for j in range(i+1):
    print('🎃', end='')
  print()

<결과 콘솔>
🎃
🎃🎃
🎃🎃🎃
🎃🎃🎃🎃
🎃🎃🎃🎃🎃


for i in range(5):
  for j in range(5-i):
    print('🎃', end='')
  print()

<결과 콘솔>
🎃🎃🎃🎃🎃
🎃🎃🎃🎃
🎃🎃🎃
🎃🎃
🎃

while내부에서 변수를 선언하고 break를 하는 방식도 가능하다.

'Python > 개요 및 문법' 카테고리의 다른 글

사용자 정의 함수  (0) 2024.09.26
컬렉션과 반복문  (0) 2024.09.26
제어문 - 조건문  (1) 2024.09.25
파이썬 연산자  (0) 2024.09.24
컬렉션 타입 - 딕셔너리  (0) 2024.09.24