TIL8: python-5

Seoyul Kim·2020년 4월 3일
0

Python

목록 보기
9/16

1. for loops

  • for 구문은 list(혹은 다른 자료 구조)의 요소를 한번에 하나씩 가지고 원하는 로직을 실행할 수 있게 해주는 역할을 한다.
for element in list:
	do_something_with_element
  • list의 요소를 한번에 한개씩 가지고 for구문 안에 있는 코드를 실행하게 된다.

  • tuple,set 등의 다른 자료 구조와도 사용할 수 있다.

break

  • for 구문에서는 리스트가 가지고 있는 요소의 수 만큼 for구문에 속해있는 코드를 실행하며 이것을 iteration이라고 한다.
  • 만일 리스트가 5개의 요소를 가지고 있으면 5 iteration이라고 한다 즉 5번 반복한다는 뜻이다.
  • 끝까지 for구문을 진행할 필요 없이 중간에서 멈추고 싶을 때는 break문을 사용하면 된다.
  • for 구문에서 break문이 실행되면 다음 iteration으로 넘어가지 않고 for 구문에서 빠져나오게 된다.
for element in my_list:
	if element==3:
		break
	else:
		print("…..")

continue

  • for구문에서 완전히 빠져나오지 않고 다음 요소로 넘어가고 싶을 때는 continue문을 사용하면 된다.

2. nested for loops

  • if 구문과 마찬가지로 nesting이 가능하다
numbers1=[1,2,3,4,5]
numbers2=[10,20,30,40,50]

for num1 in numbers1:
	for num2 in numbers2:
		print(f"{{num1}*{num2}=={num1*num2}")

3. while loops

  • list같은 data structure 기반이 아니더라도 코드 블록을 반복할 때 사용한다.
while <조건문>:
	<수행  문장1>
	<수행  문장2>

break & continue

  • break 는 while문을 강제종료하고 continue는 다음 iteration으로 넘어간다.
while number <= 10:
	if number == 9:
		break
	elif number <= 5:
		number+= 1
		contine
	else:
		print(number)
		number+= 1

while else

  • 파이썬의 while 문은 else문이 추가될 수 있으며 while의 조건문이 false이면 실행된다.즉 while문이 종료되면 else문이 실행된다.

4. looping dictionary

  • list와 마찬가지로 dictionary도 for 반복구문을 사용하여 요소 하나하나를 가지고 반복되는 로직을 실행시킬 수 있다.
  • 다만 dictionary는 각 요소가 key와 value로 이루어져 있으므로 for 반복구문에서 각 요소의 key만 리턴하며 해당 key를 가지고 값을 읽어들이는 구조이다.
bts_rm = {"실명": "김남준", "가명": "RM", "태어난 년도": "1991"}

for each_key in bts_rm:
	print(f"{each_key}은 {bts_rm[each_key]} 입니다")
for문의 each_key에 각각 실명, 가명, 태어난 년도가 순서대로 들어갈 때마다
실명은 김남준 입니다 
가명은 RM 입니다
태어난 년도는 1991 입니다
가 순서대로 출력된다.

looping dictionary with values instead of keys

  • dictionary는 values라는 함수를 속성으로 가지고 있는데, 이 values 함수는 dictionary의 value들을 리턴해 준다.
bts_rm = {"실명": "김남준", "가명": "RM", "태어난 년도": "1991"}
for each_value in name.values():
	print(f"{each_value}은 BTS 멤버 RM의 정보 입니다")
for문의 eack_value에 각각 김남준, RM, 1991이 순서대로 들어갈 때마다

김남준은 BTS 멤버 RM의 정보 입니다
RM은 BTS 멤버 RM의 정보 입니다
1991은 BTS 멤버 RM의 정보 입니다
가 출력된다.

looping dictionary with both keys and values

  • key 와 value값 둘다 가지고 for 반복구문을 실행할 수 있다.
  • dictionary의 items 함수는 key와 value를 tuple로 리턴해 준다.
    그러므로 for 반복구문에서 2개의 값을 동시에 받게된다.
bts_rm = {"실명": "김남준", "가명": "RM", "태어난 년도": "1991"}

for each_key, each value in bts_rm.items():
	print(f"{each_key}는 {each_value} 입니다")

for문의 each_key와 each_value에 각각 bts_rm의 key와 value 가 들어가 출력된다.
"실명", "김남준"—> 실명은 김남준 입니다
"가명", "RM" —> 가명은 RM 입니다
"태어난 년도", 1991 —> 태어난 년도는 1991 입니다

0개의 댓글