๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Python

[Python] for๊ณผ while๋ฌธ์˜ ์ฐจ์ด

by ์ฝ”๋”ฉํ•˜๋Š” ๋ถ•์–ด 2021. 11. 20.
๋ฐ˜์‘ํ˜•

๐Ÿณ for๋ฌธ

for [๋ณ€์ˆ˜] in [๋ฌธ์ž์—ด, ๋ฆฌ์ŠคํŠธ, ํŠœํ”Œ]
    ...

 

๐Ÿ— ํŒŒ์ด์ฌ์˜ ๊ธฐ๋ณธ์ ์ธ ๋ฐ˜๋ณต๋ฌธ. ์ˆœ์„œ์—ด์˜ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ๋ฐ˜๋ณตํ•œ๋‹ค.
๐Ÿ— ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•˜์—ฌ ๋ฐ˜๋ณต ๋ช…๋ น์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.
๐Ÿ— ๋ณ€์ˆ˜์— ์ง€์ •ํ•œ ๋ฒ”์œ„์˜ ๋‚ด์šฉ์„ ํ•˜๋‚˜์”ฉ ์ˆœ์ฐจ์ ์œผ๋กœ ๋Œ€์ž…ํ•œ๋‹ค.
๐Ÿ— ๋ฌธ์ž์—ด, ๋ฆฌ์ŠคํŠธ, ํŠœํ”Œ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์ˆœํšŒํ•˜๋‹ค๊ฐ€ ๋” ์ด์ƒ ์ˆœํšŒํ•  ๊ฒƒ์ด ์—†๋‹ค๋ฉด for๋ฌธ์„ ๋น ์ ธ๋‚˜์˜ค๊ฑฐ๋‚˜, ์ˆœํšŒ๋ฅผ ๋๋‚ด๊ธฐ ์ „์— return ๊ฐ’์ด ๋‚˜์˜จ๋‹ค๋ฉด for๋ฌธ์ด ์ข…๋ฃŒ๋œ๋‹ค.

 

ex)

# ์ „ํ˜•์ ์ธ for๋ฌธ
>>> for i in "hello":
...     print(i)
...
h
e
l
l
o

 

ex)

# list์™€ tuple ์‚ฌ์šฉ
>>> a = [(1,2), (3,4), (5,6)]
>>> for (first, last) in a:
...     print(first + last)
...
3
7
11



 

๐Ÿณ while๋ฌธ

while [์กฐ๊ฑด๋ฌธ]:
    [์ˆ˜ํ–‰๋ถ€๋ถ„]

๐Ÿ— ์กฐ๊ฑด๋ฌธ์ด ์ฐธ(True)์ธ ๊ฒฝ์šฐ ๋‚ด๋ถ€์˜ ์ˆ˜ํ–‰ ๋ถ€๋ถ„์„ ์ง„ํ–‰ํ•˜๊ณ , ์กฐ๊ฑด๋ฌธ์ด ๊ฑฐ์ง“(False)์ธ ๊ฒฝ์šฐ while๋ฌธ์„ ๋น ์ ธ๋‚˜๊ฐ„๋‹ค.
๐Ÿ— ๊ฐ•์ œ๋กœ while๋ฌธ์„ ๋น ์ ธ๋‚˜๊ฐ€๊ณ  ์‹ถ์„ ๋• break๋ฌธ์„ ์‚ฌ์šฉํ•œ๋‹ค.

 

ex)

# ์ „ํ˜•์ ์ธ while๋ฌธ
>>> count = 1

>>> while count <= 9:
...     print("Count = ", count)
...     count += 1
...     
Count =  1
Count =  2
Count =  3
Count =  4
Count =  5
Count =  6
Count =  7
Count =  8
Count =  9
# ๋ฌดํ•œ๋ฃจํ”„
>>> a = 1
>>> b = 1

>>> while a==b:
...    print('a์™€ b๋Š” ๊ฐ™๋‹ค')
...
a์™€ b๋Š” ๊ฐ™๋‹ค
a์™€ b๋Š” ๊ฐ™๋‹ค
a์™€ b๋Š” ๊ฐ™๋‹ค
...
# break๋ฌธ ์‚ฌ์šฉ
>>> coffee = 10
>>> money = 300
>>> while money:
...     print("๋ˆ์„ ๋ฐ›์•˜์œผ๋‹ˆ ์ปคํ”ผ๋ฅผ ์ค๋‹ˆ๋‹ค.")
...     coffee = coffee -1
...     print("๋‚จ์€ ์ปคํ”ผ์˜ ์–‘์€ %d๊ฐœ์ž…๋‹ˆ๋‹ค." % coffee)
...     if coffee == 0:
...         print("์ปคํ”ผ๊ฐ€ ๋‹ค ๋–จ์–ด์กŒ์Šต๋‹ˆ๋‹ค. ํŒ๋งค๋ฅผ ์ค‘์ง€ํ•ฉ๋‹ˆ๋‹ค.")
...         break
...



 

๐Ÿณ for๋ฌธ๊ณผ while๋ฌธ์˜ ์ฐจ์ด

for๋ฌธ์€ for [๋ณ€์ˆ˜] in [๋ฌธ์ž์—ด, ๋ฆฌ์ŠคํŠธ, ํŠœํ”Œ] ๋ถ€๋ถ„์„ ํ†ตํ•ด ์ƒˆ๋กœ์šด ๋ณ€์ˆ˜๋ฅผ ๋งŒ๋“ ๋‹ค๋Š” ์ , while๋ฌธ์€ while [์กฐ๊ฑด๋ฌธ]: ๋ถ€๋ถ„์„ ํ†ตํ•ด ๋ณ€์ˆ˜์˜ True/False ์—ฌ๋ถ€๋ฅผ ํŒ๋‹จํ•  ๋ฟ, ์ƒˆ๋กœ์šด ๋ณ€์ˆ˜๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์—†๋‹ค๋Š” ์ ์— ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  for๋ฌธ์€ ๋ณดํ†ต
1. ๋ช…์‹œ์ ์œผ๋กœ ๋ช‡๋ฒˆ ์‹คํ–‰ํ•ด์•ผ ํ•˜๋Š”์ง€ ์ •ํ•ด์ง„ ์ƒํ™ฉ์ด๊ฑฐ๋‚˜,
2. list, array๊ฐ™์ด ๊ธธ์ด๊ฐ€ ์ •ํ•ด์ ธ ์žˆ๋Š” ๊ฐ’์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๊ณ 

 

while๋ฌธ์€
1. ๋ช‡๋ฒˆ ์‹คํ–‰ํ•ด์•ผํ• ์ง€ ๋ชจ๋ฅด๋Š” ์ƒํ™ฉ์ด๊ฑฐ๋‚˜,
2. ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ ๋˜๋Š” ํŠน์ •ํ•œ ๊ฐ’์ด ๋‚˜์˜ฌ ๋•Œ๊นŒ์ง€ ์ง€์†์ ์œผ๋กœ ๋ฐ˜๋ณตํ• ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

๋˜ํ•œ, while๋ฌธ์€ ๋ฌดํ•œ๋ฃจํ”„๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋„ ์‚ฌ์šฉํ•œ๋‹ค. for๋ฌธ์˜ ๊ฒฝ์šฐ ํŒŒ์ด์ฌ์—์„  ๋ฌดํ•œ๋ฃจํ”„๋กœ ๋งŒ๋“ค๊ธฐ๋Š” ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€