728x90
5장 제어문¶
5.1 조건에 따라 분기하는 if 문¶
단일 조건에 따른 분기(if)¶
[5장: 72페이지]
In [1]:
x = 95
if x >= 90:
print("Pass")
Pass
단일 조건 및 그 외 조건에 따른 분기(if ~ else)¶
[5장: 73페이지]
In [2]:
x = 75
if x >= 90:
print("Pass")
else:
print("Fail")
Fail
여러 조건에 따른 분기(if ~ elif ~ else)¶
[5장: 75페이지]
In [3]:
x = 85
if x >= 90:
print("Very good")
elif (x >= 80) and (x < 90):
print("Good")
else:
print("Bad")
Good
[5장: 75페이지]
In [4]:
x = 85
if x >= 90:
print("Very Good")
elif 80 <= x < 90:
print("Good")
else:
print("Bad")
Good
중첩 조건에 따른 분기¶
[5장: 77페이지]
In [5]:
x = 100
if x >= 90:
if x==100 :
print("Perfect")
else:
print("Very Good")
elif (x >= 80) and (x < 90):
print("Good")
else:
print("Bad")
Perfect
5.2 지정된 범위만큼 반복하는 for 문¶
반복문의 필요성¶
[5장: 78페이지]
In [6]:
a = 0 # 변수 a를 0으로 초기화
print(a) # 변수 a 출력
a = a + 1 # 변수 a에 1을 더한 후, 다시 a에 대입
print(a) # 변수 a 출력
a = a + 1 # 같은 코드 반복
print(a)
a = a + 1 # 같은 코드 반복
print(a)
a = a + 1 # 같은 코드 반복
print(a)
a = a + 1 # 같은 코드 반복
print(a)
0
1
2
3
4
5
for 문의 구조¶
반복 범위 지정¶
리스트 이용¶
[5장: 80페이지]
In [7]:
for a in [0, 1, 2, 3, 4, 5]:
print(a)
0
1
2
3
4
5
[5장: 81페이지]
In [8]:
myFriends = ['James', 'Robert', 'Lisa', 'Mary'] # 리스트를 변수에 할당
for myFriend in myFriends:
print(myFriend)
James
Robert
Lisa
Mary
range() 함수 이용¶
[5장: 82페이지]
In [9]:
#range(<=시작번호, <끝번호,증가)
print( range(1,6,1))
print(len(range(1,6,1)))
range(1, 6)
5
In [10]:
a=0
sum=0
for n in range(1,7,1):
a = a+1
sum = sum+n
print(sum)
21
In [11]:
print(range(0, 10, 1))
range(0, 10)
[5장: 82페이지]
In [12]:
print(list(range(0, 10, 1)))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[5장: 82페이지]
In [13]:
for a in range(0, 6, 1):
print(a)
0
1
2
3
4
5
[5장: 82페이지]
In [14]:
for a in range(0, 6, 2):
print(a)
0
2
4
[5장: 83페이지]
In [15]:
print(list(range(0, 10, 1)))
print(list(range(0, 10)))
print(list(range(10)))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[5장: 83페이지]
In [16]:
print(list(range(0, 20, 5))) # Line 1
print(list(range(-10, 0, 2))) # Line 2
print(list(range(3, -10, -3))) # Line 3
print(list(range(0, -5, 1))) # Line 4
[0, 5, 10, 15]
[-10, -8, -6, -4, -2]
[3, 0, -3, -6, -9]
[]
중첩 for 문¶
[5장: 84페이지]
In [17]:
x_list = ['x1', 'x2']
y_list = ['y1', 'y2']
print("x y")
for x in x_list:
for y in y_list:
print(x,y)
x y
x1 y1
x1 y2
x2 y1
x2 y2
여러 개의 리스트 다루기¶
[5장: 85페이지]
In [18]:
names = ['James', 'Robert', 'Lisa', 'Mary']
scores = [95, 96, 97, 94]
[5장: 85페이지]
In [19]:
for k in range(len(names)):
print(names[k], scores[k])
James 95
Robert 96
Lisa 97
Mary 94
[5장: 86페이지]
In [20]:
num_list = ["a","b","c","d"]
for i, n in enumerate(num_list):
print(n, i, num_list[i])
for i in range(0,4):
print(i, num_list[i])
a 0 a
b 1 b
c 2 c
d 3 d
0 a
1 b
2 c
3 d
In [21]:
for name, score in zip(names, scores):
print(name, score)
James 95
Robert 96
Lisa 97
Mary 94
5.3 조건에 따라 반복하는 while 문¶
while 문의 구조¶
[5장: 87페이지]
In [22]:
i = 0 # 초기화
sum = 0 # 초기화
print("i sum")
while (sum < 20): # 조건 검사
i = i + 1 # i를 1씩 증가
sum = sum + i # 이전의 sum과 현재 i를 더해서 sum을 갱신
print(i, sum) # i와 sum을 출력
i sum
1 1
2 3
3 6
4 10
5 15
6 21
무한 반복 while 문¶
5.4 반복문을 제어하는 break와 continue¶
반복문을 빠져나오는 break¶
[5장: 89페이지]
In [23]:
k=0
while True:
k = k + 1 # k는 1씩 증가
if(k > 3): # k가 3보다 크면
break # break로 while 문을 빠져나옴
print(k) # k 출력
1
2
3
[5장: 89페이지]
In [24]:
for k in range(10):
if(k > 2): # k 가 2보다 크면
break # break로 for 문을 빠져나옴
print(k) # k 출력
0
1
2
다음 반복을 실행하는 continue¶
[5장: 90페이지]
In [25]:
for k in range(5):
if(k == 2):
continue
print(k)
0
1
3
4
[5장: 91페이지]
In [26]:
k = 0
while True:
k = k + 1
if(k == 2):
print("continue next")
continue
if(k > 4):
break
print(k)
1
continue next
3
4
5.5 간단하게 반복하는 한 줄 for 문¶
리스트 컴프리헨션의 기본 구조¶
[5장: 92페이지]
In [27]:
numbers = [1,2,3,4,5]
square = []
for i in numbers:
square.append(i**2)
print(square)
[1, 4, 9, 16, 25]
[5장: 92페이지]
In [28]:
numbers = [1,2,3,4,5]
square = [i**2 for i in numbers]
print(square)
[1, 4, 9, 16, 25]
조건문을 포함한 리스트 컴프리헨션¶
[5장: 93페이지]
In [29]:
numbers = [1,2,3,4,5]
square = []
for i in numbers:
if i >= 3:
square.append(i**2)
print(square)
[9, 16, 25]
[5장: 93페이지]
In [30]:
numbers = [1,2,3,4,5]
square = [i**2 for i in numbers if i>=3]
print(square)
[9, 16, 25]
5.6 정리¶
In [31]:
score = 95
if (score>=90) and (score<=100):
if(score>=97):
print("A+")
elif (score>=94) and (score<=96):
print("A0")
else:
print('A-')
elif (score>=80) and (score<90):
print('B')
else:
print('C')
A0
'Python > 문법' 카테고리의 다른 글
파이썬 - 클래스 (0) | 2021.12.29 |
---|---|
파이썬 - 입력과 출력 (0) | 2021.12.29 |
파이썬 - 변수, 자료구조 (0) | 2021.12.28 |
Chapter04 조건문, 반복문 (0) | 2021.12.28 |
Chapter03-6 집합 (0) | 2021.12.26 |
댓글