Thursday_June_25
.
.
.
์์ ์ ๋ชฉ์ ๋ฌธ๋ฒ ์๋ฌ๋ฅผ ์ดํดํ๋ ค๋ฉด ๋จผ์ ๊ฐ๋
์ ์ก์์ผ ํ๋ค.
๊ธฐ๋ณธ์ ์ธ ํจ์์ Parameter์๊ฒ ๊ฐ์ ์ ๋ฌํด ์ฃผ๋ ๋ฐฉ์์ด๋ค.
def number(first, second, third): print("First = ", first) print("Second = ", second) print("Third = ", third)
์ด๋ฐ ํจ์๋ฅผ ์ ์ํ ํ, ํธ์ถ์ ํ ๋
Argument์์ ์ฃผ๋ ์์๋๋ก ๊ฐ์ด Parameter์๊ฒ ์ ๋ฌ์ด ๋๋ค.number("st", "nd", "rd")
์คํ ๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ๋ค.
First = st Second = nd Third = rd
๋ค์๊ณผ ๊ฐ์ด Argument๋ฅผ ์ฃผ๋ฉด
number(789, 456, 123)
์คํ ๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ๋ค.
First = 789 Second = 456 Third = 123
Parameter์๊ฒ ๊ฐ์ ์์๋๋ก ์ฃผ์ง ์๋ ๋์ ์
ํจ์์์ ์ ์๋ Parameter์ ์ด๋ฆ์ผ๋ก ๋ง์ถ์ด์ ๊ฐ์ ์ ๋ฌํด ์ฃผ๋ ๋ฐฉ์์ ๋งํ๋ค.์ด ๋ฐฉ์์ ์ฅ์ ์ Parameter์ ์ด๋ฆ์ ๋ง์ถ์ด ์ฃผ๊ธฐ๋๋ฌธ์,
ํธ์ถ์ ํ๋ Argument๋ค์ ์์๊ฐ ๋ฐ๋์ด๋ ์๊ด์ด ์๋ค๋ ์ ์ด๋ค.๊ทธ๋ฆฌ๊ณ ์ด๋ฆ์ ๋ง์ถ์ด ๊ฐ์ ๋๊ธฐ๊ธฐ ๋๋ฌธ์ ์ด๋ค Parameter์ ์ด๋ค ๊ฐ์ ์ฃผ๋์ง ์ฝ๊ฒ ์ ์ ์๋ค.
def number(first, second, third): print("First = ", first) print("Second = ", second) print("Third = ", third)
๋๊ฐ์ ์์ ์์ Keyword Argument ๋ฐฉ์์ ์จ๋ณด๊ฒ ๋ค.
number(third = "rd", first = "st", second = "nd")
์ด๋ ๊ฒ ์์๋ฅผ ๋ค์ฃฝ๋ฐ์ฃฝ ์์์ด๋ Parameter์ ์ด๋ฆ์ ๋ง์ถ์ด ๊ฐ์ ์ฃผ์๊ธฐ ๋๋ฌธ์
First = st Second = nd Third = rd
์คํ ๊ฒฐ๊ณผ๋ ๊ตฟ์ด๋ค ๐
Positional Argument ๋ฐฉ์๊ณผ Keyword Argument ๋ฐฉ์์ ์์ด ์ฐ๋ ๋ฐฉ์์ด๋ค.
์์ ๋ฅผ ํตํด ์ดํดํด๋ณด์.
def real_madrid(ramos, kroos, benzema, bale): print("Ramos's Back Number = ", ramos) print("Kroos's Back Number = ", kroos) print("Benzema's Back Number = ", benzema) print("Bale's Back Number = ", bale)
โฐ TMI Time
๋ผ๋ชจ์ค์ ๋ฑ๋ฒํธ๋ 4๋ฒ
ํฌ๋ก์ค์ ๋ฑ๋ฒํธ๋ 8๋ฒ
๋ฒค์ ๋ง์ ๋ฑ๋ฒํธ๋ 9๋ฒ
๋ฒ ์ผ์ ๋ฑ๋ฒํธ๋ 11๋ฒ์ด๋ค.์๋ฌดํผ ๋ ๋ฐฉ์์ ์์ด์ ํจ์๋ฅผ ์ฌ์ฉํด ๋ณด์.
real_madrid(4, 8, benzema = 9, bale = 11) real_madrid(4, 8, bale = 11, benzema = 9)
์ผ๋จ ํจ์์ ์ถ๋ ฅ๊ฐ์ ๋ ๋ค ๋ชจ๋ ๊ฐ๋ค.
Ramos's Back Number = 4 Kroos's Back Number = 8 Benzema's Back Number = 9 Bale's Back Number = 11
๊ทธ๋ฆฌ๊ณ ์์์ 4์ 8์ Positional ๋ฐฉ์์ ์ฌ์ฉํ ๊ฒ์ด๊ณ ,
benzema์ bale์ Keyword ๋ฐฉ์์ ์ฌ์ฉํ ๊ฒ์ด๋ค.
๊ทธ๋์ ์์ ์ค๋ช ํ๋ฏ, Keyword Argument ๋ฐฉ์์ ์์๊ฐ ์๊ด์ด ์๊ธฐ ๋๋ฌธ์, ์ฒซ ๋ฒ์งธ ์ค๊ณผ ๋ ๋ฒ์งธ ์ค์์ ๋ณด์ด๋๊ฒ ์ฒ๋ผ benzema์ bale์ ์๋ฆฌ๋ฅผ ๋ฐ๊ฟ๋ ์๊ด์ด ์๋ค.
3๋ฒ์ Mixing ๋ฐฉ๋ฒ์ ์ฃผ์์ฌํญ์ด ์๋ค.
Keyword ๋ผ๋ฆฌ์ ์์๋ ์๊ด์ด ์์ง๋ง,
Positional๊ณผ Keyword๋ฅผ ์์ด ์ธ ๋์๋ ์์๊ฐ ์ค์ํ๋ค.EX)
real_madrid(4, kroos = 8, 9, bale = 11) real_madrid(ramos = 4, kroos = 8, 9, 11)
๋ ๋ฐฉ์ ๋ชจ๋ ๋ค ๋ค์๊ณผ ๊ฐ์ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค.
SyntaxError: positioanl argument follows keyword argument
Keyword ๋ฐฉ์์ด Positional ๋ฐฉ์๋ณด๋ค ์์์ ์ฌ์ฉ๋๋ค๊ณ ๋ฌ ์๋ฌ์ด๋ค.
๊ทธ๋ฅ ์์ด์ ์ฌ์ฉํ ๋์๋ ๋ฌด์กฐ๊ฑด ์์ชฝ์ Positional ๋ฐฉ์์ ์จ์ค ํ, Keyword ๋ฐฉ์์ ์จ์ฃผ๋ฉด ๋๋ค.