๐Ÿน ์ œ์–ด๋ฌธ - ๋ฐ˜๋ณต๋ฌธ

๋ฏผ๋‹ฌํŒฝ์ด์šฐ์œ ยท2024๋…„ 5์›” 13์ผ

๐Ÿน ํŒŒ์ด์ฌ ๊ธฐ์ดˆ

๋ชฉ๋ก ๋ณด๊ธฐ
11/19

๐Ÿ’ก 1. ๋ฐ˜๋ณต๋ฌธ์ด๋ž€

๋ฐ˜๋ณต๋ฌธ์€ ๋™์ผํ•œ ์ž‘์—…์„ ์—ฌ๋Ÿฌ ๋ฒˆ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ์ œ์–ด ๊ตฌ์กฐ์ด๋‹ค. ์ฃผ๋กœ for๋ฌธ๊ณผ while๋ฌธ์ด ์‚ฌ์šฉ๋˜๋ฉฐ, ๊ฐ๊ฐ์˜ ๋ฐ˜๋ณต๋ฌธ์€ ๋‹ค๋ฅธ ์ƒํ™ฉ์— ์ ํ•ฉํ•œ ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค.

๐Ÿ’ก 2. while ๋ฌธ

while ๋ฌธ์€ ํŠน์ • ์กฐ๊ฑด์ด ์ฐธ์ธ ๋™์•ˆ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ฝ”๋“œ ๋ธ”๋ก์„ ์‹คํ–‰ํ•˜๋Š” ์ œ์–ด ๊ตฌ์กฐ์ด๋‹ค. while ๋ฌธ์€ ์ฃผ์–ด์ง„ ์กฐ๊ฑด์ด ์ฐธ์ธ ๋™์•ˆ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉฐ, ์กฐ๊ฑด์ด ๊ฑฐ์ง“์ด ๋˜๋ฉด ๋ฐ˜๋ณต์„ ๋ฉˆ์ถ˜๋‹ค.

while ๋ฌธ์˜ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

while ์กฐ๊ฑด:
    # ์กฐ๊ฑด์ด ์ฐธ์ธ ๋™์•ˆ ์‹คํ–‰๋  ์ฝ”๋“œ
i = 1

while i <= 5:
    print('Hello Python')
    i += 1 # i = i + 1
> Hello Python
> Hello Python
> Hello Python
> Hello Python
> Hello Python
# 1๋ถ€ํ„ฐ 10๊นŒ์ง€์˜ ์ดํ•ฉ
i = 1
sum = 0

while i <= 10:
    sum += i
    i += 1

print(f'1๋ถ€ํ„ฐ 10๊นŒ์ง€์˜ ํ•ฉ: {sum}')
> 1๋ถ€ํ„ฐ 10๊นŒ์ง€์˜ ํ•ฉ: 55

๐Ÿ’ก 3. for ๋ฌธ

for ๋ฌธ์€ ์‹œํ€€์Šค(๋ฆฌ์ŠคํŠธ, ํŠœํ”Œ, ๋ฌธ์ž์—ด)์˜ ๊ฐ ํ•ญ๋ชฉ๋“ค์— ๋Œ€ํ•ด ๋ฐ˜๋ณต ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ˜๋ณต๋ฌธ์ด๋‹ค. for๋ฌธ์€ ์ฃผ๋กœ ์ง€์ •๋œ ๋ฒ”์œ„ ๋‚ด์—์„  ๋ฐ˜๋ณตํ•  ๋•Œ ์‚ฌ์šฉ๋œ๋‹ค. ์ฆ‰, ๋ฐ˜๋ณตํ•  ์š”์†Œ๋“ค์ด ๋ฏธ๋ฆฌ ์ •ํ•ด์ ธ ์žˆ๋Š” ๊ฒฝ์œ  ์œ ์šฉํ•˜๋‹ค.

for ๋ฌธ์˜ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

for ์š”์†Œ in ์‹œํ€€์Šค:
    # ์š”์†Œ์— ๋Œ€ํ•œ ์ž‘์—… ์ˆ˜ํ–‰
list1 = [10, 20, 30, 40]

for li in list1:
  print(li)
> 10
> 20
> 30
> 40

3-1. range()

range() ํ•จ์ˆ˜๋Š” ํŒŒ์ด์ฌ์—์„œ ์ˆœ์ฐจ์ ์ธ ์ •์ˆ˜์˜ ์‹œํ€€์Šค๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜์ด๋‹ค. ์ฃผ๋กœ for ๋ฌธ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ๋˜๋ฉฐ, ์ผ์ •ํ•œ ๋ฒ”์œ„ ๋‚ด์—์„œ ๋ฐ˜๋ณต ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ๋•Œ ์œ ์šฉํ•˜๊ฒŒ ํ™œ์šฉ๋œ๋‹ค. range() ํ•จ์ˆ˜์˜ ๊ฒฐ๊ณผ๋กœ ์ƒ์„ฑ๋˜๋Š” ์ˆœ์ฐจ์ ์ธ ์ •์ˆ˜ ์‹œํ€€์Šค๋Š” ์‹ค์ œ๋กœ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋˜์ง€ ์•Š๊ณ  ํ•„์š”ํ•  ๋•Œ๋งˆ๋‹ค ์ƒ์„ฑ๋˜๋ฏ€๋กœ, ํฐ ๋ฒ”์œ„์˜ ๋ฐ˜๋ณต๋ฌธ์—๋„ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

range()์˜ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

range(start, stop, step)
num = range(1, 11, 1)
print(num)
> range(1, 11)
for i in num:
  print(i, end = ' ')
> 1 2 3 4 5 6 7 8 9 10 
for i in range(1, 11, 1):
  print(i, end = ' ')
> 1 2 3 4 5 6 7 8 9 10 
#step ์ƒ๋žต ๊ฐ€๋Šฅ. ๊ธฐ๋ณธ๊ฐ’ 1
for i in range(1, 11):
  print(i, end = ' ')
> 1 2 3 4 5 6 7 8 9 10 
# start ์ƒ๋žต ๊ฐ€๋Šฅ. ๊ธฐ๋ณธ๊ฐ’ 0
for i in range(11):
  print(i, end = ' ')
> 0 1 2 3 4 5 6 7 8 9 10 

3-2. enumerate()

enumerate() ํ•จ์ˆ˜๋Š” ํŒŒ์ด์ฌ์—์„œ ๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ธ๋ฑ์Šค๋กธ ๊ฐ’์„ ํ•จ๊ป˜ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜์ด๋‹ค. ์ฃผ๋กœ for ๋ฌธ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ๋˜๋ฉฐ, ๋ฐ˜๋ณต๋ฌธ ๋‚ด์—์„œ ์ˆœ์„œ๋ฅผ ์ถ”์ ํ•˜๋ฉด์„œ ๊ฐ’๊ณผ ํ•ด๋‹น ๊ฐ’์˜ ์ธ๋ฑ์Šค๋ฅผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ๋•Œ ์œ ์šฉํ•˜๋‹ค. enumerate() ํ•จ์ˆ˜๋Š” (์ธ๋ฑ์Šค, ๊ฐ’)์˜ ํŠœํ”Œ์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์ดํ„ฐ๋ ˆ์ดํ„ฐ(iterator)๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

enumerate()์˜ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

enumerate(iterable, start = 0)
list1 = [10, 20, 30, 40]

# in๊ณผ ์œ ์‚ฌํ•˜์ง€๋งŒ, ์ธ๋ฑ์Šค์™€ ํ•จ๊ป˜ ํŠœํ”Œ ํ˜•์‹์œผ๋กœ ์ถœ๋ ฅ๋จ
for e in enumerate(list1, 0):
  print(e)
> (0, 10)
> (1, 20)
> (2, 30)
> (3, 40)
list1 = [10, 20, 30, 40]

# ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ 10๋ถ€ํ„ฐ ์‹œ์ž‘
for e in enumerate(list1, 10):
  print(e)
> (10, 10)
> > (11, 20)
> (12, 30)
> (13, 40)
list1 = [10, 20, 30, 40]

# start ์ƒ๋žต ์‹œ 0๋ถ€ํ„ฐ
for e in enumerate(list1):
  print(e)
> (0, 10)
> (1, 20)
> (2, 30)
> (3, 40)
list1 = [10, 20, 30, 40]

# (0, 10)
# i, v = (0, 10)
for i, v in enumerate(list1):
  print(f'์ธ๋ฑ์Šค:{i}, ๊ฐ’:{v}')
> ์ธ๋ฑ์Šค:0, ๊ฐ’:10
> ์ธ๋ฑ์Šค:1, ๊ฐ’:20
> ์ธ๋ฑ์Šค:2, ๊ฐ’:30
> ์ธ๋ฑ์Šค:3, ๊ฐ’:40

3-3. zip()

zip() ํ•จ์ˆ˜๋Š” ํŒŒ์ด์ฌ์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ(iterable) ๊ฐ์ฒด๋ฅผ ๋ณ‘๋ ฌ์ ์œผ๋กœ ๋ฌถ์–ด์ฃผ๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜์ด๋‹ค. ๊ฐ ๊ฐ์ฒด๋กœ๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ ํ•˜๋‚˜์˜ ์š”์†Œ์”ฉ ๊ฐ€์ ธ์™€ ํŠœํ”Œ๋กœ ๋ฌถ์–ด์ฃผ๋Š” ์ดํ„ฐ๋ ˆ์ดํ„ฐ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์ฃผ๋กœ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฆฌ์ŠคํŠธ๋‚˜ ํŠœํ”Œ์„ ๋ณ‘๋ ฌ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๊ณ ์ž ํ•  ๋•Œ ์‚ฌ์šฉ๋œ๋‹ค.

zip()์˜ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

zip(iterable1, iterable2, ...)
li1 = [10, 20, 30]
li2 = ['์œ ๋ฏผ์ฝฉ', '์ •ํ˜„์ฝฉ', '์ˆ˜ํ˜„์ฝฉ']

for i in range(0, 3):
  print(li1[i], li2[i])
> 10 ์œ ๋ฏผ์ฝฉ
> 20 ์ •ํ˜„์ฝฉ
> 30 ์ˆ˜ํ˜„์ฝฉ
# li1์˜ ๊ธธ์ด๊ฐ€ ๋ณ€ํ•ด๋„ ์ฝ”๋“œ ์ˆ˜์ •ํ•  ํ•„์š”X
for i in range(len(li1)):
  print(li1[i], li2[i])
> 10 ์œ ๋ฏผ์ฝฉ
> 20 ์ •ํ˜„์ฝฉ
> 30 ์ˆ˜ํ˜„์ฝฉ
li1 = [10, 20, 30, 40, 50]
li2 = ['์œ ๋ฏผ์ฝฉ', '์ •ํ˜„์ฝฉ', '์ˆ˜ํ˜„์ฝฉ', '์œ ๋นˆ์ฝฉ']

for i in range(len(li1)):
  print(li1[i], li2[i])
> IndexError: list index out of range
# li2์˜ ๊ธธ์ด๊ฐ€ li1์˜ ๊ธธ์ด๋ฅผ ๋ฒ—์–ด๋‚˜ ์ธ๋ฑ์Šค ์—๋Ÿฌ๊ฐ€ ๋œธ
li1 = [10, 20, 30]
li2 = ['์œ ๋ฏผ์ฝฉ', '์ •ํ˜„์ฝฉ', '์ˆ˜ํ˜„์ฝฉ']

for l1, l2 in zip(li1, li2):
  print(l1, l2)
> 10 ์œ ๋ฏผ์ฝฉ
> 20 ์ •ํ˜„์ฝฉ
> 30 ์ˆ˜ํ˜„์ฝฉ
li1 = [10, 20, 30]
li2 = ['์œ ๋ฏผ์ฝฉ', '์ •ํ˜„์ฝฉ', '์ˆ˜ํ˜„์ฝฉ']

# ํ•˜๋‚˜๋กœ ๋ฌถ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ํŠœํ”Œ๋กœ ์ถœ๋ ฅ
for li in zip(li1, li2):
  print(li)
> (10, '์œ ๋ฏผ์ฝฉ')
> (20, '์ •ํ˜„์ฝฉ')
> (30, '์ˆ˜ํ˜„์ฝฉ')
li1 = [10, 20, 30, 40, 50]
li2 = ['์œ ๋ฏผ์ฝฉ', '์ •ํ˜„์ฝฉ', '์ˆ˜ํ˜„์ฝฉ', '์œ ๋นˆ์ฝฉ']

# ์งง์€ ๊ธธ์ด๊นŒ์ง€๋งŒ ๋Œ
for i in zip(li1, li2):
  print(i)
> (10, '์œ ๋ฏผ์ฝฉ')
> (20, '์ •ํ˜„์ฝฉ')
> (30, '์ˆ˜ํ˜„์ฝฉ')
> (40, '์œ ๋นˆ์ฝฉ')
for n, A, a in zip('12345', 'ABCDE', 'abcde'):
  print(n, A, a)
> 1 A a
> 2 B b
> 3 C c
> 4 D d
> 5 E e

๐Ÿ’ก 4. ์ค‘์ฒฉ ๋ฐ˜๋ณต๋ฌธ

ํŒŒ์ด์ฌ์—์„œ ์ค‘์ฒฉ๋œ ๋ฐ˜๋ณต๋ฌธ์€ ํ•˜๋‚˜์˜ ๋ฐ˜๋ณต๋ฌธ ์•ˆ์— ๋‹ค๋ฅธ ๋ฐ˜๋ณต๋ฌธ์ด ํฌํ•จ๋œ ๊ตฌ์กฐ๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ์ค‘์ฒฉ ๋ฐ˜๋ณต๋ฌธ์€ ์™ธ๋ถ€ ๋ฐ˜๋ณต๋ฌธ์˜ ๊ฐ ๋ฐ˜๋ณต๋งˆ๋‹ค ๋‚ด๋ถ€ ๋ฐ˜๋ณต๋ฌธ์ด ๋ชจ๋‘ ์‹คํ–‰๋˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ž‘๋™ํ•œ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋‹ค์ฐจ์›์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ๋ณต์žกํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ค‘์ฒฉ ๋ฐ˜๋ณต๋ฌธ์˜ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

for ์™ธ๋ถ€_๋ณ€์ˆ˜ in ์™ธ๋ถ€_์‹œํ€€์Šค:
    for ๋‚ด๋ถ€_๋ณ€์ˆ˜ in ๋‚ด๋ถ€_์‹œํ€€์Šค:
        # ๋‚ด๋ถ€ ๋ฐ˜๋ณต๋ฌธ ์ฝ”๋“œ
    # ์™ธ๋ถ€ ๋ฐ˜๋ณต๋ฌธ ์ฝ”๋“œ
for i in range(1, 4):
  print(f'๐Ÿ˜Š        i:{i}')
  for j in range(1, 4):
    print(f'๐Ÿ˜˜    j:{j}')
> ๐Ÿ˜Š        i:1
> ๐Ÿ˜˜    j:1
> ๐Ÿ˜˜    j:2
> ๐Ÿ˜˜    j:3
> ๐Ÿ˜Š        i:2
> ๐Ÿ˜˜    j:1
> ๐Ÿ˜˜    j:2
> ๐Ÿ˜˜    j:3
> ๐Ÿ˜Š        i:3
> ๐Ÿ˜˜    j:1
> ๐Ÿ˜˜    j:2
> ๐Ÿ˜˜    j:3
profile
์–ด๋–ป๊ฒŒ ํ–„์Šคํ„ฐ๊ฐ€ ๊ฐœ๋ฐœ์ž

0๊ฐœ์˜ ๋Œ“๊ธ€