개발(IT)/Python(파이썬)

파이썬(Python) 기본문법(제어문)

isony 2024. 10. 19. 20:14
반응형

파이썬(Python) 기본문법(제어문)

1. 파이썬(Python) 제어문(조건문)

1.1 if문 (단일조건)

if <조건>:
    <코드블록>

 

예)

x = 65

if x >= 60:
    print("패스")

(결과)
패스

 

1.2 if ~ else 문 (단일조건과 그외)

if <조건>:
    <코드 블록1>
else:
    <코드 블록2>

 

예)

x = 85

if (x >= 90):
    print("축하합니다.")
    print("합격입니다.")
else:
    print("죄송합니다.")
    print("불합격입니다.")

(결과)
죄송합니다.
불합격입니다.

 

1.3 if ~ elif ~ else (여러조건)

if <조건1>:
    <코드 블록1>
elif <조건2>:
    <코드 블록2>
      :
elif <조건n>:
    <코드 블록n>
else:
    <코드 블록>

 

예1)

x = 75

if (x >= 90):
    print('학점:A')
elif (80 <= x < 90):
    print('학점:B')
elif (70 <= x < 80):
    print('학점:C')
else:
    print('학점:F')

(결과)
학점:C

 

예2)

x = 100

if (x >= 90):
    if (x == 100):
        print('만점 합격')
    else:
        print('합격')
else:
    print('불합격')

(결과)
만점 합격

 

 

2. 파이썬(Python) 제어문(반복문)

2.1 for 반복문

(형식1)
for <반복변수> in <반복범위>:
    <코드 블록>

 

예1)

for num in [0,1,2,3,4,5]:
    print(num)

(결과)
0
1
2
3
4
5

 

예2)

for num in range(6):
    print(num)

(결과)
0
1
2
3
4
5

 

(형식2)
for index, value in enumerate(list_data):
    <코드 블록>

 

예)

list_num = [10, 20, 30, 40, 50]

for index, value in enumerate(list_num):
    print(index, value)

(결과)
0 10
1 20
2 30
3 40
4 50

 

(형식3)
for val1, val2 in zip(list1, list2):
    <코드 블록>

 

예)

names = ['이순신','홍길동','유관순','이영자','김동길','성수교']
scores = [96, 100, 85, 80, 75, 95]

for name, score in zip(names, scores):
    print(name, score)

(결과)
이순신 96
홍길동 100
유관순 85
이영자 80
김동길 75
성수교 95

 

2.2 while 반복문

while <조건>:
    <코드 블록>

 

예)

list_num = []
count = 0

while (count < 10):
    list_num.append(count)
    count += 1

print(list_num)

(결과)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

 

2.3 한줄 for 반복문

(형식1)
[<반복 실행문> for <반복 변수> in <반복 범위>]

 

예)

num = list(range(10))

result = [(2 * x + 1) for x in num]

print(result)

(결과)
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]

 

(형식2)
[<반복 실행문> for <반복 변수> in <반복 범위> if <조건>]

 

예)

num = list(range(10))

result = [(2 * x + 1) for x in num if (x >= 3)]

print(result)

(결과)
[7, 9, 11, 13, 15, 17, 19]

 

 

2.4 반복문 흐름을 변경(break, continue)문

num = range(1,20)
sum_num = 0
count = 0

while True:
    count += 1

    if (count >= 10):
        print('while문 break')
        break
    elif (count == 5):
        print('while문 continue')
        continue

    sum_num += num[count]
    print(count, sum_num)

(결과)
range(1, 20)
1 2
2 5
3 9
4 14
while문 continue
6 21
7 29
8 38
9 48
while문 break

 

반응형