[Python 기초] 02 조건문, 반복문

홍랑·2021년 10월 10일
0

Python

목록 보기
2/6
*using Python - PyCharm Community Edition

📌 조건문

  • 조건이 True일 때 실행된다.
  • if 문: 단일조건
  • if~else 문: 양자택일
    - 모든 조건식은 if~else 문으로 변경된다.
  • if~elif 문: 다자택일 (다중조건)
    - 조건 순서, 범위 명시 주의

📚 단일조건 if 문

if 10 > 5:
    print('10은 5보다 크다')

if num > 20:
    print('큰 숫자입니다.')

📚 양자택일 if~else 문

if myScore >= passScore:
    print('PASS!')
else:
    print('FAIL!')
    
# pass: 조건의 실행문을 결정하지 못했을 때, 나중에 코딩하겠다
if myScore >= passScore:
    pass
else:
    pass

📚 다중조건 if~elif 문

score = int(input())
grades = ''

if score >= 90:
    grades = 'A'
elif score >= 80:
    grades = 'B'
elif score >= 70:
    grades = 'C'
elif score >= 60:
    grades = 'D'
else:
    grades = 'F'

print(f'score: {score}, grade: {grades}')

📚 중첩 조건문

  • 조건문 안에 또 다른 조건문이 있을 수 있다.
  • 보통 3단계 이상 중첩 지양
score = int(input())

if score < 60:
    print('FAIL')
else:
    if score >= 90:
        print('A')
    elif score >= 80:
        print('B')
    elif score >= 70:
        print('C')
    elif score >= 60:
        print('D')

📌 반복문

  • 특정 실행을 반복하는 것
  • 프로그래밍이 효율적으로 간결해지고 유지 보수가 쉬움

📚 for 문

  • 횟수에 의한 반복
for i in range(5000):
    pass
    
# 횟수가 지정되고 복잡한 조건이 없는 경우, while문 보다 for문이 적합
sum = 0
for i in range(1, 11):
    sum += i
print('sum : {}'.format(sum))
  • range(): 반복 범위 설정
# x부터 y-1까지 z씩 증가
# x=0 일때 생략 가능, z 생략 가능
range(x, y, z)	
range(11)	# 0부터 10까지 1씩 증가

for i in range(1, 25, 4):	# 1부터 24까지 4씩 증가하는 범위 내에서 반복문 실행
    print(i, end=' ')		# 1 5 9 13 17 21

📚 while 문

  • 조건에 의한 반복
    - 조건에 만족하면 반복 실행, 그렇지 않으면 반복 중단
  • 무한 루프: 항상 True 조건으로 무한 반복하게 되는 반복문
endNum = 10; n = 0
while n <= endNum:	# n이 0부터 시작해 endNum과 작거나 같을 동안 n 출력 후 1 더해 반복
    print(n)
    n += 1

# 조건에 맞춰 중단과 실행이 결정되는 경우, for문 보다 while문이 적합
sum = 0; naxInt = 0; n =1
while n <= 100 and sum <= 50:
    n += 1
    
    if n % 7 == 0:
        sum += n
        maxInt = n
    print('n : {}'.format(n))

print('7의 배수의 합이 50 이상인 최초의 정수 : {}'.format(maxInt))

# 무한 루프
n = 1
while n < 10:
    pinrt('hi')

📚 반복문 제어

continue - 실행 생략 후 다음 반복 실행문으로 넘어감

# 0부터 99까지 7의 배수만 출력
# 7의 배수가 아닌 경우 continue에 의해 출력문에 도달할 수 없음
for i in range(100):
    if i % 7 != 0:
        continue
    
    print('{} 는 7의 배수입니다.'.format(i))

break - 실행 중단 후 반복문 빠져나옴

# 조건 True로 무한 반복 중
# num이 5와 같거나 커지는 시점에 반복문 종료
num = 0
while True:
    print('hi')
    num += 1
    
    if num >= 5:
        break

📚 중첩 반복문

  • 반복문 안에 또 다른 반복문 선언
for i in range(1, 10):
    for j in range(i):
        print('*', end='')
    print()
profile
호랑이 기운이 솟아나요🐯

0개의 댓글