๐ for๋ฌธ์ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ๋ค
for ๋ณ์ in ๋ฆฌ์คํธ(๋๋ ํํ, ๋ฌธ์์ด) :
์ํํ ๋ฌธ์ฅ1
์ํํ ๋ฌธ์ฅ2
...
๋ฆฌ์คํธ๋ ํํ, ๋ฌธ์์ด์ ์ฒซ ๋ฒ์งธ ์์๋ถํฐ ๋ง์ง๋ง ์์๊น์ง ์ฐจ๋ก๋ก ๋ณ์์ ๋์ ๋์ด "์ํํ ๋ฌธ์ฅ1", "์ํํ ๋ฌธ์ฅ2" ๋ฑ์ด ์ํ๋๋ค.
์์) "์ด 5๋ช ์ ํ์์ด ์ํ์ ๋ณด์๋๋ฐ ์ํ ์ ์๊ฐ 60์ ์ด ๋์ผ๋ฉด ํฉ๊ฒฉ์ด๊ณ ๊ทธ๋ ์ง ์์ผ๋ฉด ๋ถํฉ๊ฒฉ์ด๋ค. ํฉ๊ฒฉ์ธ์ง ๋ถํฉ๊ฒฉ์ธ์ง ๊ฒฐ๊ณผ๋ฅผ ๋ณด์ฌ ์ฃผ์์ค."
marks = [90, 25, 67, 45, 80]
number = 0
for mark in marks:
number = number +1
if mark >= 60:
print("%d๋ฒ ํ์์ ํฉ๊ฒฉ์
๋๋ค." % number)
else:
print("%d๋ฒ ํ์์ ๋ถํฉ๊ฒฉ์
๋๋ค." % number)
๐ while๋ฌธ์์ ์ดํด๋ณธ continue๋ฌธ์ for๋ฌธ์์๋ ์ฌ์ฉํ ์ ์๋ค. ์ฆ for๋ฌธ ์์ ๋ฌธ์ฅ์ ์ํํ๋ ๋์ค์ continue๋ฌธ์ ๋ง๋๋ฉด for๋ฌธ์ ์ฒ์์ผ๋ก ๋์๊ฐ๊ฒ ๋๋ค.
์์ ) 60์ ์ด์์ธ ์ฌ๋์๊ฒ๋ ์ถํ ๋ฉ์์ง๋ฅผ ๋ณด๋ด๊ณ ๋๋จธ์ง ์ฌ๋์๊ฒ๋ ์๋ฌด ๋ฉ์์ง๋ ์ ํ์ง ์๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
marks = [90, 25, 67, 45, 80]
number = 0
for mark in marks:
number = number +1
if mark < 60:
continue
print("%d๋ฒ ํ์ ์ถํํฉ๋๋ค. ํฉ๊ฒฉ์
๋๋ค. " % number)
์ ์๊ฐ 60์ ์ดํ์ธ ํ์์ผ ๊ฒฝ์ฐ์๋ mark < 60์ด ์ฐธ์ด ๋์ด continue๋ฌธ์ด ์ํ๋๋ค. ๋ฐ๋ผ์ ์ถํ ๋ฉ์์ง๋ฅผ ์ถ๋ ฅํ๋ ๋ถ๋ถ์ธ print๋ฌธ์ ์ํํ์ง ์๊ณ for๋ฌธ์ ์ฒ์์ผ๋ก ๋์๊ฐ๊ฒ ๋๋ค.
๐ for๋ฌธ์ ์ซ์ ๋ฆฌ์คํธ๋ฅผ ์๋์ผ๋ก ๋ง๋ค์ด ์ฃผ๋ range ํจ์์ ํจ๊ป ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค. ์์ ์ซ์์ ๋ ์ซ์๋ฅผ ์ง์ ํ๋ ค๋ฉด range(์์ ์ซ์, ๋ ์ซ์) ํํ๋ฅผ ์ฌ์ฉํ๋๋ฐ, ์ด๋ ๋ ์ซ์๋ ํฌํจ๋์ง ์๋๋ค.
a = range(1, 11)
print(a)

for์ range ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด 1๋ถํฐ 10๊น์ง ๋ํ๋ ๊ฒ์ ๋ค์๊ณผ ๊ฐ์ด ์ฝ๊ฒ ๊ตฌํํ ์ ์๋ค.
add = 0
for i in range(1, 11) :
add = add + i
print(add)

range(1, 11)์ ์ซ์ 1๋ถํฐ 10๊น์ง(1 ์ด์ 11 ๋ฏธ๋ง)์ ์ซ์๋ฅผ ๋ฐ์ดํฐ๋ก ๊ฐ๋ ๊ฐ์ฒด์ด๋ค. ๋ฐ๋ผ์ ์ ์์์ i ๋ณ์์ ๋ฆฌ์คํธ์ ์ซ์๊ฐ 1๋ถํฐ 10๊น์ง ํ๋์ฉ ์ฐจ๋ก๋ก ๋์
๋๋ฉด์ add = add + i ๋ฌธ์ฅ์ ๋ฐ๋ณต์ ์ผ๋ก ์ํํ๊ณ add๋ ์ต์ข
์ ์ผ๋ก 55๊ฐ ๋๋ค.
๐ฅ ๋ํ ์ฐ๋ฆฌ๊ฐ ์์์ ์ด๋ณธ "60์ ์ด์์ด๋ฉด ํฉ๊ฒฉ"์ด๋ผ๋ ๋ฌธ์ฅ์ ์ถ๋ ฅํ๋ ์์ ๋ range ํจ์๋ฅผ ์ฌ์ฉํด์ ๋ฐ๊ฟ ์ ์๋ค. ๋ค์์ ๋ณด์.
marks = [90, 25, 67, 45, 80]
for number in range(len(marks)):
if marks[number] < 60:
continue
print("%d๋ฒ ํ์ ์ถํํฉ๋๋ค. ํฉ๊ฒฉ์
๋๋ค." % (number+1))
len ํจ์๋ ๋ฆฌ์คํธ ์์ ์์ ๊ฐ์๋ฅผ ๋๋ ค์ฃผ๋ ํจ์์ด๋ค. ๋ฐ๋ผ์ len(marks)๋ 5๊ฐ ๋ ๊ฒ์ด๊ณ range(len(marks))๋ range(5)๊ฐ ๋ ๊ฒ์ด๋ค. number ๋ณ์์๋ ์ฐจ๋ก๋ก 0๋ถํฐ 4๊น์ง์ ์ซ์๊ฐ ๋์ ๋ ๊ฒ์ด๊ณ , marks[number]๋ ์ฐจ๋ก๋๋ก 90, 25, 67, 45, 80 ๊ฐ์ ๊ฐ๊ฒ ๋๋ค.
๐ ๋ฆฌ์คํธ ์์ for๋ฌธ์ ํฌํจํ๋ ๋ฆฌ์คํธ ๋ดํฌ(List comprehension)๋ฅผ ์ฌ์ฉํ๋ฉด ์ข ๋ ํธ๋ฆฌํ๊ณ ์ง๊ด์ ์ธ ํ๋ก๊ทธ๋จ์ ๋ง๋ค ์ ์๋ค. ๋ค์ ์์ ๋ฅผ ๋ณด์.
a = [1, 2, 3, 4]
result = []
for num in a :
result.append(num*3)
print(result)

์ ์์ ๋ a ๋ฆฌ์คํธ์ ๊ฐ ํญ๋ชฉ์ 3์ ๊ณฑํ ๊ฒฐ๊ณผ๋ฅผ result ๋ฆฌ์คํธ์ ๋ด๋ ์์ ์ด๋ค.
์ด๊ฒ์ ๋ฆฌ์คํธ ๋ดํฌ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ๊ฐ๋จํ ํด๊ฒฐํ ์ ์๋ค.
a = [1, 2, 3, 4]
result = [num * 3 for num in a]
print(result)

๋ง์ฝ [1,2,3,4] ์ค์์ ์ง์์๋ง 3์ ๊ณฑํ์ฌ ๋ด๊ณ ์ถ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ๋ฆฌ์คํธ ๋ดํฌ ์์ "if ์กฐ๊ฑด"์ ์ฌ์ฉํ ์ ์๋ค.
a = [1, 2, 3, 4]
result = [num * 3 for num in a if num % 2 ==0]
print(result)

๋ฆฌ์คํธ ๋ดํฌ์ ์ผ๋ฐ ๋ฌธ๋ฒ์ ๋ค์๊ณผ ๊ฐ๋ค. "if ์กฐ๊ฑด" ๋ถ๋ถ์ ์์ ์์ ์์ ๋ณผ ์ ์๋ฏ์ด ์๋ตํ ์ ์๋ค.
โญ [ ํํ์ for ํญ๋ชฉ in ๋ฐ๋ณต๊ฐ๋ฅ๊ฐ์ฒด if ์กฐ๊ฑด๋ฌธ ] โญ
์กฐ๊ธ ๋ณต์กํ์ง๋ง for๋ฌธ์ 2๊ฐ ์ด์ ์ฌ์ฉํ๋ ๊ฒ๋ ๊ฐ๋ฅํ๋ค. for๋ฌธ์ ์ฌ๋ฌ ๊ฐ ์ฌ์ฉํ ๋์ ๋ฌธ๋ฒ์ ๋ค์๊ณผ ๊ฐ๋ค.
