
딕셔너리 = {
키:값,
키:값,
...
키:값
}
for **key 값** in 딕셔너리:
코드
for key in sample_dict:
print(key)

for key in sample_dict:
print('{:5s}: {}'.format(key, sample_dict[key]))

딕셔너리객체.keys()딕셔러니객체.values()딕셔너리객체..items()range(start, stop, step)while 불 표현식:
코드
i = 0
while i < 10:
print('{}번째 반복입니다.'.format(i+1))
i += 1
-> i가 반복문 내에서 커지게 만들어 결국 범위를 벗어나서 반복문 종료
sample_list = [1,2] * 2
value = 2
print(sample_list)
while value in sample_list:
sample_list.remove(2)
print(sample_list)
print(sample_list)
-> sample_list에서 요소 2를 반복 제거
-> 모두 제거하면 반복문 종료
-> while, remove를 사용해서 구현
# 5초 후에 반복을 멈추는 반복문
number = 0
stop_time = time.time() + 5
while time.time() < stop_time:
number += 1
print('약 5초 동안 {}번 1을 더했습니다.'.format(number))
-> 유닉스 타임에 5초를 더하여 5초가 지나면 반복문 종료
for element in sample_list:
if element != 103:
print(element)
else:
break
-> sample_list의 요소를 조회하다 103이 아닐때 break 키워드 실행하여 반복문을 나간다.
for element in sample_list:
if element == 103:
continue
print(element)
-> sample_list의 요소를 조회하다 103이 되었을때, 바로 다음 구문인 print(element) 실행하지 않고 for element in sample_list:로 이동
def 함수 이름():
코드
def 함수 이름(매개변수, 매개변수, ...):
코드
def print_n_times(value, n):
for i in range(n):
print(value)
print_n_times('안녕하세요', 3)
-> '안녕하세요', 3 를 매개변수로 받았다. range(n), print(value)이 영향을 받아 작동하였다.

def print_n_times(value, n):
for i in range(n):
print(value)
1) 함수에 매개변수를 1개만 넣은 경우
-> 타입에러 발생

2) 함수에 매개변수를 2개 이상을 넣은 경우
-> 타입에러 발생

👉 break 키워드를 배울때, 전시간에 for문을 배우며 다중 반복문을 배웠다. 그래서 다중 반복문에서 break 키워드를 만나면 가장 상위의 반복문에서 나가는지 아니면 바로 상위의 반복문으로 이동하는지 헷갈렸다.
이 문제를 강사님께 물어봤는데, 바로 예시를 들어 답변을 해주셨다.
for i in range(1,6):
print(i)
for j in range(11,16):
print(j)
if j > 13:
break

-> 예시를 보면 첫 반복 안에 두번째 반복문이 있는데, 첫 반복문은 i가 1~5까지 차근 차근 반복되는 것이 보인다. 하지만 두번째 반복문은 j가 11~14까지 반복되다가, j가 13이 초과된 시점에 반복을 멈추고, 첫번째 반복문으로 이동한다.
sample_dict = {
'name' : '범죄도시 4',
'type' : ['범죄','액션','스릴러','느와르','코미디','형사'],
'actor' : ['마동석','김무열','박지환','이동휘'],
'show' : '개봉중'
}
input_key = input('키를 입력하시오')
serch = (input_key in sample_dict)
if serch:
print(sample_dict[input_key])
else:
print('존재하지 않는 키에 접근하고 있습니다.')

-> 딕셔너리에서 벨류값은 키값을 조회하여 알 수 있다. 키값을 입력 받아서 벨류값을 찾았다. '벨류 = 딕셔너리객체[키] ' 를 알면 매우 쉬웠다.
for i in range(8):
print('안녕하세요')

-> range()와 for문을 이용하면 매우 쉬웠다.
star = '*'
for i in range(1,11):
print(star * i)

for i in range(1,11):
for j in range(i):
print('*',end='')
print()

-> end=''(개행 방지)를 이용해서 이중 for문을 이용하여 만들었다.
space = ' '
star = '*'
for i in range(1,11):
for_space = 10-i
print(space*for_space, star*(2*i-1))

-> 공백의 수를 줄여가고, 별의 수는 늘려가는 방식을 이용하여 만들었다.
ran_num = int('{}{}{}'.format(*random.sample(range(1, 9), 3)))
ran_str = str(ran_num)
print('정답 : ',ran_num)
strike = 0 # 조건식 초기화하여, 반복될 수 있도록함
while strike < 3: # strike 값이 3이 되면 반복종료
user_str = input('예상하는 세자리 숫자를 중복없이 입력 (100~999) > ')
strike = 0 # 반복되었을 때 값을 가지지 않도록 초기화
ball = 0
for i in range(3):
if int(user_str[i]) == int(ran_str[i]): # 스트라이크 값 찾기. 문자열 비교하여 같은 자리에 같은 값이면 실행
strike +=1
elif user_str[i] in ran_str: # 볼 값 찾기. 문자열 안에 있으면 실행
ball +=1
else:
pass
print('{}스트라이크, {}볼'.format(strike, ball))
