๐Ÿ“š ์Šคํ„ฐ๋””/ํŒŒ์ด์ฌ ์Šคํ„ฐ๋”” ๊ฐ•์˜์ž๋ฃŒ

[3ํŒ€/๊น€๊ทœ๋ฆฌ] 5์ฐจ์‹œ ํŒŒ์ด์ฌ ์Šคํ„ฐ๋”” - ํ•จ์ˆ˜

kyuree 2023. 4. 3. 00:44

5แ„Žแ…กแ„‰แ…ต_แ„’แ…กแ†ทแ„‰แ…ฎ_แ„€แ…กแ†ผแ„‹แ…ดแ„‹แ…กแ†ซ
2.31MB
5แ„Žแ…กแ„‰แ…ต_แ„’แ…กแ†ทแ„‰แ…ฎ_แ„€แ…ชแ„Œแ…ฆ.docx
3.94MB

*๋ชจ๋“  ์ถœ์ฒ˜๋Š” ๋„์„œ "๋ฐ์ดํ„ฐ ๊ณผํ•™์„ ์œ„ํ•œ ํŒŒ์ด์ฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ"์ž…๋‹ˆ๋‹ค*

 

#1. ํ•จ์ˆ˜ ๊ธฐ์ดˆ

๐Ÿ’ญ ์—ฌ๋Ÿฌ ๋ช…์ด ํ”„๋กœ๊ทธ๋žจ์„ ํ•จ๊ป˜ ๊ฐœ๋ฐœํ•  ๋•Œ, ์ฝ”๋“œ๋ฅผ ์–ด๋–ป๊ฒŒ ์ž‘์„ฑํ•˜๋ฉด ์ข‹์„๊นŒ

 

  • ํ•„์š”ํ•œ ๋ถ€๋ถ„ ๋‚˜๋ˆ„์–ด ์ž‘์„ฑํ•œ ํ›„ ํ•ฉ์น˜๊ธฐ

ํ•จ์ˆ˜์˜ ๊ฐœ๋…๊ณผ ์žฅ์ 


  • ํ•จ์ˆ˜(function)?
    • ์–ด๋–ค ์ผ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ ๋ฉ์–ด๋ฆฌ or ๋ฌถ์Œ
      • ex. ๋„ํ˜• ๋„“์ด ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ → ํ•จ์ˆ˜ํ™”ํ•˜์—ฌ ํ•„์š”ํ•  ๋•Œ๋งˆ๋‹ค ํ˜ธ์ถœ
  • ํ•จ์ˆ˜์˜ ์žฅ์ 
    • ํ•„์š”ํ•  ๋•Œ๋งˆ๋‹ค ํ˜ธ์ถœ ๊ฐ€๋Šฅ
      • ๋ฐ˜๋ณต์  ์ˆ˜ํ–‰ ์—…๋ฌดํ•  ๋•Œ ์œ ์šฉ
    • ๋…ผ๋ฆฌ์  ๋‹จ์œ„๋กœ ๋ถ„ํ•  ๊ฐ€๋Šฅ
      • ex. ๋„ํ˜• ๊ณ„์‚ฐ ํ”„๋กœ๊ทธ๋žจ
        • ๊ณฑ์…ˆํ•˜๋Š” / ๋ง์…ˆํ•˜๋Š” / ๋‚˜๋ˆ—์…ˆํ•˜๋Š” …
    • ์ฝ”๋“œ์˜ ์บก์Šํ™”
      • ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ž˜ ์ •์˜ํ•จ → ํƒ€์ธ์ด ์ด์šฉ๊ฐ€๋Šฅ
        • ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜? → ์ฝ”๋“œ์˜ ์ธํ’‹๊ณผ ์•„์›ƒํ’‹ ๋ช…ํ™•ํžˆ ํ•จ

ํ•จ์ˆ˜์˜ ์„ ์–ธ


  • ์„ ์–ธ ๋ฐฉ๋ฒ•
def ํ•จ์ˆ˜ ์ด๋ฆ„ (๋งค๊ฐœ๋ณ€์ˆ˜ 1 ....):
		๋ช…๋ น๋ฌธ 1
		๋ช…๋ น๋ฌธ 2
			return <๋ฐ˜ํ™˜๊ฐ’>

 

  • def : ‘definition’ → ํ•จ์ˆ˜ ์ •์˜ ์‹œ์ž‘!
  • ํ•จ์ˆ˜ ์ด๋ฆ„ : ์ž์œ ๋กญ๊ฒŒ ์ง€์ • , but ๊ทœ์น™ ์กด์žฌ
    • ์†Œ๋ฌธ์ž
    • ๋„์–ด์“ฐ๊ธฐํ•  ๋•Œ ์–ธ๋”๋ฐ”(_) ์‚ฌ์šฉ
    • ๋™์‚ฌ, ๋ช…์‚ฌ ํ•จ๊ป˜ ์‚ฌ์šฉ
      • ex. find_number
    • ์™ธ๋ถ€ ๊ณต๊ฐœ์šฉ → ์ค„์ž„๋ง ์‚ฌ์šฉ X, ๋ช…๋ฃŒํ•œ ์ด๋ฆ„ ์‚ฌ์šฉ
  • ๋งค๊ฐœ๋ณ€์ˆ˜(parameter): ํ•จ์ˆ˜์—์„œ ์ž…๋ ฅ๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ณ€์ˆ˜, 1๊ฐœ ์ด์ƒ ๊ฐ’ ์ ๊ธฐ ๊ฐ€๋Šฅ
  • ๋ช…๋ น๋ฌธ : ๋ฐ˜๋“œ์‹œ ๋“ค์—ฌ์“ฐ๊ธฐ ํ›„ ์ฝ”๋“œ ์ž…๋ ฅ, ์ˆ˜ํ–‰ํ•  ์ฝ”๋“œ๋Š” ์ง€๊ธˆ๊ฐ€์ง€ ๋ฐฐ์šด ์ฝ”๋“œ์™€ ๋™์ผ
  • ํ•จ์ˆ˜ ์„ ์–ธ ์˜ˆ์‹œ
def calculate_circle_area(r, pi):
		return r ** 2 * pi

 

  • ํ•จ์ˆ˜ ์ด๋ฆ„ : calculate_circle_area
  • ๋งค๊ฐœ๋ณ€์ˆ˜ : r, pi
  • ๊ฐ’ ๋ฐ˜ํ™˜(return) : r**2*pi์˜ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜
  • +) ๋ฐ˜ํ™˜?
    • ex. f(x) = x + 1 → f(1) = 2
    • ํ•จ์ˆ˜ f(x)์—์„œ x์— 1์ด ๋“ค์–ด๊ฐ€๋ฉด 2๊ฐ€ ๋ฐ˜ํ™˜๋˜๋Š” ๊ฒƒ
    • ๊ฒฐ๊ณผ๊ฐ’์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋จ

ํ•จ์ˆ˜์˜ ์‹คํ–‰ ์ˆœ์„œ


  • ์„ ์–ธ ํ›„, ํ˜ธ์ถœํ•  ์ฐจ๋ก€
  • ์ฝ”๋“œ
def calculate_rectanlge_area(x,y):
		return x * y

rectangle_x = 10
rectangle_y = 20
print("์‚ฌ๊ฐํ˜• x์˜ ๊ธธ์ด:", rectangle_x)

print("์‚ฌ๊ฐํ˜• y์˜ ๊ธธ์ด:", rectangle_y)

#๋„“์ด๋ฅผ๊ตฌํ•˜๋Š”ํ•จ์ˆ˜ ํ˜ธ์ถœ
print("์‚ฌ๊ฐํ˜•์˜ ๋„“์ด:", calculate_rectangle_area(rectangle_x, rectangle_y))

  • ์‹คํ–‰ ํ™”๋ฉด

  • ์„ค๋ช…
    • ํ•จ์ˆ˜ ์ •์˜๋œ ๋ถ€๋ถ„์€ ์‹คํ–‰๋˜์ง€ ์•Š์Œ
    • ํ•ด๋‹น ์ฝ”๋“œ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์—…๋กœ๋“œ → ๋‹ค๋ฅธ ์ฝ”๋“œ ํ˜ธ์ถœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋„๋ก ์ค€๋น„
    • ๋”ฐ๋ผ์„œ ๊ฐ€์žฅ ๋จผ์ € ํ•จ์ˆ˜ ์„ ์—… ์ฝ”๋“œ ์ž…๋ ฅ
    • ๊ฐ ๋ณ€์ˆ˜์— ํ• ๋‹น๋œ x,y ๊ฐ’์ด ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ๋จ

ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ํ•จ์ˆ˜์™€ ์ˆ˜ํ•™์˜ ํ•จ์ˆ˜


  • f(x) = x + 1
  • in ์ˆ˜ํ•™

  • f(x) ์™€ g(x) ์ฝ”๋“œ๋กœ ํ‘œํ˜„
def f(x):
	return 2 * x +7
def g(x):
		return x ** 2

x =2
print(f(x)+ g(x) + f(g(x)) + g(f(x))) 
#151
  • f(x) → 11
  • g(x) → 4
  • f(g(x)) → 15
  • g(f(x)) → 121
  • +) ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ์ธ์ˆ˜
    • ๋งค๊ฐœ๋ณ€์ˆ˜(parameter)
      • ์–ด๋–ค ๋ณ€์ˆ˜ ์‚ฌ์šฉํ•˜๋Š”์ง€ ์ •์˜
      • ์„ค๊ณ„๋„
    • ์ธ์ˆ˜(argument)
      • ์‹ค์ œ ๋งค๊ฐœ๋ณ€์ˆ˜์— ๋Œ€์ž…๋˜๋Š” ๊ฐ’
      • ๊ทธ ์„ค๊ณ„๋„๋กœ ์ง€์€ ๊ฑด๋ฌผ
    def f(x):
    		return 2*x + 7
    
    print(f(2))
    #11
    
    • def f(x):
      • ‘x’ → ๋งค๊ฐœ๋ณ€์ˆ˜
      • ์–ด๋–ค ๋ณ€์ˆ˜ ์‚ฌ์šฉํ•˜๋Š”์ง€ ์ •์˜
    • f(2)
      • ‘2’ → ์ธ์ˆ˜
    • ๊ตฌ๋ถ„์—†์ด ์‚ฌ์šฉํ•˜๊ธฐ๋„ ํ•จ!

ํ•จ์ˆ˜์˜ ํ˜•ํƒœ


๋งค๊ฐœ๋ณ€์ˆ˜์™€ ๋ฐ˜ํ™˜๊ฐ’(returnvalue)์˜ ์œ ๋ฌด์— ๋”ฐ๋ผ ๋„ค๊ฐ€์ง€ ํ˜•ํƒœ ๋ถ„๋ฅ˜

  • ๋งค๊ฐœ๋ณ€์ˆ˜ X & ๋ฐ˜ํ™˜๊ฐ’ X
    • ํ•จ์ˆ˜ ๋‚ด๋ถ€ ๋ช…๋ น๋ฌธ๋งŒ ์ˆ˜ํ–‰
      • return ๋ช…๋ น์–ด ์‚ฌ์šฉ X, ๋งค๊ฐœ๋ณ€์ˆ˜ ์ž…๋ ฅ X
    def a_rectangle_area():
    		print(5 * 7)
    
    a_rectangle_area()
    #35
    
    • ์ž…๋ ฅ๊ฐ’ X & ์ถœ๋ ฅ๊ฐ’ X
    • ํ•จ์ˆ˜ ์ž์ฒด๋Š” none ๊ฐ’์„ ๊ฐ€์ง
      • ๋‚ด๋ถ€ ํ•จ์ˆ˜์ธ print()๋กœ ์ธํ•ด ๊ฐ’ ์ถœ๋ ฅ๋จ
  • ๋งค๊ฐœ๋ณ€์ˆ˜ O & ๋ฐ˜ํ™˜๊ฐ’ X
    • ๋งค๊ฐœ๋ณ€์ˆ˜ ํ™œ์šฉ → ๋ช…๋ น๋ฌธ๋งŒ ์ˆ˜ํ–‰
    def b_rectangle_area(x,y):
    	print(x * y)
    
    b_rectangle_area(5,7)
    #35
    • ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ํ•จ์ˆ˜๋Š” none์œผ๋กœ ์น˜ํ™˜๋จ
      • ๋‚ด๋ถ€ ํ•จ์ˆ˜ print()๊ฐ€ ์‹คํ–‰๋œ ๊ฒƒ
  • ๋งค๊ฐœ๋ณ€์ˆ˜ X & ๋ฐ˜ํ™˜๊ฐ’ O
    • ๋งค๊ฐœ๋ณ€์ˆ˜ ํ™œ์šฉํ•˜์ง€ ์•Š๊ณ , ๋ช…๋ น๋ฌธ ์ˆ˜ํ–‰ ํ›„ ๊ฒฐ๊ณผ๊ฐ’ ๋ฐ˜ํ™˜
    def c_rectangle_area():
    	return(5 * 7)
    
    print(c_rectangle_area())
    #35
    • ์ž…๋ ฅ๊ฐ’ X & ์ถœ๋ ฅ๊ฐ’ O
    • ํ•จ์ˆ˜ ํ˜ธ์ถœํ•  ๋•Œ print() ์‚ฌ์šฉ
      • ๋‚ด๋ถ€ ํ•จ์ˆ˜ ์ˆ˜ํ–‰ ์‹œํ‚ค๋Š” ๊ฒƒ X
      • return ๋ฌธ์œผ๋กœ 35๋กœ ์น˜ํ™˜๋จ
  • ๋งค๊ฐœ๋ณ€์ˆ˜ O & ๋ฐ˜ํ™˜๊ฐ’ O
    • ๋งค๊ฐœ๋ณ€์ˆ˜ ํ™œ์šฉ , ๋ช…๋ น๋ฌธ ์ˆ˜ํ–‰ ํ›„ ๊ฒฐ๊ณผ๊ฐ’ ๋ฐ˜ํ™˜
    def d_rectangle_area(x, y):
    	return(x * y)
    
    print(d_rectangle_area(3, 5))
    #35
    • return ์žˆ๋Š” ๊ฒฝ์šฐ(๋ฐ˜ํ™˜๊ฐ’ ์žˆ๋Š” ๊ฒฝ์šฐ)
      • ํ•ด๋‹น ํ•จ์ˆ˜ ํ˜ธ์ถœํ•˜๋Š” ๊ณณ์— ํ•จ์ˆ˜ ๋ฐ˜ํ™˜๊ฐ’์„ ๋ณ€์ˆ˜์— ํ• ๋‹น์‹œ์ผœ ์‚ฌ์šฉ
      result = d_rectangle_area(3, 5)
      

#2. ํ•จ์ˆ˜ ์‹ฌํ™”

ํ•จ์ˆ˜์˜ ํ˜ธ์ถœ ๋ฐฉ์‹


  • ๋ณ€์ˆ˜ ํ˜ธ์ถœ
def f(x): 
	y=x
	x=5
	return x*y

x=3
print(f(x))
#9
print(x)
#3

→ ๋‚ด๋ถ€์˜ x์™€ ๋ฐ–์˜ x๋Š” ๋‹ค๋ฅธ ๋ณ€์ˆ˜

  • ํ•จ์ˆ˜๊ฐ€ ๋ณ€์ˆ˜ ํ˜ธ์ถœํ•˜๋Š” ๋ฐฉ์‹

๋ณ€์ˆ˜์˜ ์‚ฌ์šฉ ๋ฒ”์œ„


  • ๋ณ€์ˆ˜๊ฐ€ ์ฝ”๋“œ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ฒ”์œ„
  • ํ•จ์ˆ˜ ๋‚ด๋ถ€ or ํ”„๋กœ๊ทธ๋žจ ์ „์ฒด
  • ๊ณ ๋ คํ•  ๋ณ€์ˆ˜ ๋‘ ๊ฐ€์ง€
    • ์ง€์—ญ ๋ณ€์ˆ˜(local variable): ํ•จ์ˆ˜ ๋‚ด๋ถ€
    • ์ „์—ญ ๋ณ€์ˆ˜(global variable): ํ”„๋กœ๊ทธ๋žจ ์ „์ฒด
  • ๋ณ€์ˆ˜ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•
    • ์ž˜๋ชป ์‚ฌ์šฉํ•œ ๊ฒฝ์šฐ
    def test(t):
    	print(x)
    	t = 20
    	print('in function :',t)
    
    x = 3
    test(x)
    #10
    #in function : 20
    
    print('in main :',x)
    #10
    
    print('in main :',t)
    #error
    • ์‹ ๊ฒฝ ์“ธ ๋ณ€์ˆ˜ → x, t
      • test(x)์˜ x
        • 10
        • ์ „์—ญ ๋ณ€์ˆ˜
      • ๋‚ด๋ถ€์˜ t
        • ์ง€์—ญ ๋ณ€์ˆ˜
        • error ๋ฐœ์ƒ
    • ์ง€์—ญ ๋ณ€์ˆ˜(local variable)
      • ๋™์ผํ•œ s๊ฐ€ ์•„๋‹Œ ๋‹ค๋ฅธ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๊ฐ€์ง„ ์„œ๋กœ ๋‹ค๋ฅธ ๋ณ€์ˆ˜
        • ‘I love Paris’๋กœ s๊ฐ’์„ ๋ณ€๊ฒฝํ•ด๋„ ๋‚ด๋ถ€์˜ ‘I love London’์ด ์ถœ๋ ฅ๋จ!
    • def f(): s = 'I love London' print(s) s = 'I love Paris' f() #I love London print(s) #I love Paris
  • ์ „์—ญ ๋ณ€์ˆ˜(global variable)
#ํ•จ์ˆ˜ ์ •์˜
def add(x,y):
	total = x + y #total -> ์ง€์—ญ๋ณ€์ˆ˜
	print('in function')
	print('a:',str(a), "b:", str(b), "a + b:", str(a + b), "total:", str(total))
	return total

#์ „์—ญ ๋ณ€์ˆ˜ ์„ ์–ธ a, b, total
a = 3
b = 5
total = 0

#์ •์˜ ํ•จ์ˆ˜ ์‚ฌ์šฉ X
print('in program -1')
print('a:',str(a), "b:", str(b), "a + b:", str(a + b))

#์ •์˜ํ•œ ํ•จ์ˆ˜ ์‚ฌ์šฉ
sum = add(a,b)
print("After Calculation")
printC'Total', str(total), " Sum:", str(sum))
  • ์‹คํ–‰ ํ™”๋ฉด

๋ณ€์ˆ˜์˜ ์‚ฌ์šฉ ๋ฒ”์œ„


  • ๋ณ€์ˆ˜๊ฐ€ ์ฝ”๋“œ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ฒ”์œ„
  • ํ•จ์ˆ˜ ๋‚ด๋ถ€ or ํ”„๋กœ๊ทธ๋žจ ์ „์ฒด
  • ๊ณ ๋ คํ•  ๋ณ€์ˆ˜ ๋‘ ๊ฐ€์ง€
    • ์ง€์—ญ ๋ณ€์ˆ˜(local variable): ํ•จ์ˆ˜ ๋‚ด๋ถ€
    • ์ „์—ญ ๋ณ€์ˆ˜(global variable): ํ”„๋กœ๊ทธ๋žจ ์ „์ฒด
  • ๋ณ€์ˆ˜ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•
    • ์ž˜๋ชป ์‚ฌ์šฉํ•œ ๊ฒฝ์šฐ
    def test(t):
    	print(x)
    	t = 20
    	print('in function :',t)
    
    x = 3
    test(x)
    #10
    #in function : 20
    
    print('in main :',x)
    #10
    
    print('in main :',t)
    #error
    • ์‹ ๊ฒฝ ์“ธ ๋ณ€์ˆ˜ → x, t
      • test(x)์˜ x
        • 10
        • ์ „์—ญ ๋ณ€์ˆ˜
      • ๋‚ด๋ถ€์˜ t
        • ์ง€์—ญ ๋ณ€์ˆ˜
        • error ๋ฐœ์ƒ
    • ์ง€์—ญ ๋ณ€์ˆ˜(local variable)
      • ๋™์ผํ•œ s๊ฐ€ ์•„๋‹Œ ๋‹ค๋ฅธ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๊ฐ€์ง„ ์„œ๋กœ ๋‹ค๋ฅธ ๋ณ€์ˆ˜
        • ‘I love Paris’๋กœ s๊ฐ’์„ ๋ณ€๊ฒฝํ•ด๋„ ๋‚ด๋ถ€์˜ ‘I love London’์ด ์ถœ๋ ฅ๋จ!
    • def f(): s = 'I love London' print(s) s = 'I love Paris' f() #I love London print(s) #I love Paris
  • ์ „์—ญ ๋ณ€์ˆ˜(global variable)
#ํ•จ์ˆ˜ ์ •์˜
def add(x,y):
	total = x + y #total -> ์ง€์—ญ๋ณ€์ˆ˜
	print('in function')
	print('a:',str(a), "b:", str(b), "a + b:", str(a + b), "total:", str(total))
	return total

#์ „์—ญ ๋ณ€์ˆ˜ ์„ ์–ธ a, b, total
a = 3
b = 5
total = 0

#์ •์˜ ํ•จ์ˆ˜ ์‚ฌ์šฉ X
print('in program -1')
print('a:',str(a), "b:", str(b), "a + b:", str(a + b))

#์ •์˜ํ•œ ํ•จ์ˆ˜ ์‚ฌ์šฉ
sum = add(a,b)
print("After Calculation")
printC'Total', str(total), " Sum:", str(sum))
  • ์‹คํ–‰ ํ™”๋ฉด

์žฌ๊ท€ ํ•จ์ˆ˜


  • ์ž๊ธฐ ์ž์‹  ๋‹ค์‹œ ํ˜ธ์ถœ
  • ์ˆ˜ํ•™์˜ ์ ํ™”์‹๊ณผ ๊ฐ™์€ ํ˜•ํƒœ
    • n!
    • n! = n x (n-1)!
  • ์ฝ”๋“œ๋กœ ๊ตฌํ˜„?
def factorial(n):
	if n == 1:
		return 1
	else:
		return n * factorial(n - 1) #์žฌ๊ท€

print(factorial(int(input("Input Number for Factorial Calculation: "))))

#3. ํ•จ์ˆ˜์˜ ์ธ์ˆ˜

  • ์ธ์ˆ˜
    • ํ•จ์ˆ˜์˜ ์ž…๋ ฅ์œผ๋กœ ๋“ค์–ด๊ฐ€๋Š” ๋ณ€์ˆ˜

ํ‚ค์›Œ๋“œ ์ธ์ˆ˜


  • ํ•จ์ˆ˜์— ์ž…๋ ฅ๋˜๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๋ณ€์ˆ˜๋ช… ์‚ฌ์šฉ → ํ•จ์ˆ˜ ์ธ์ˆ˜ ์ง€์ •
def print_name(my_name,your_name):
	print("Hello {0}, My name is {1}".format(your_name,my_name))

print_name(’kyuree', "TEAMLAB")
#Hello TEAMLAB, My name is kyuree

print_name(your_name = 'TEAMLAB',my_name = 'kyuree')
#Hello TEAMLAB, My name is kyuree
  • print_name(’kyuree', "TEAMLAB")
    • ‘kyuree’ → my_name
    • ‘TEAMLAB’ → your_name
  • print_name(your_name = 'TEAMLAB',my_name = 'kyuree')
    • ๋ณ€์ˆ˜๋ช… ๋ช…์‹œ → ํ•ด๋‹น ๋ณ€์ˆ˜์— ์›ํ•˜๋Š” ๊ฐ’ ํ• ๋‹น
    • ์‹คํ–‰ ๊ฒฐ๊ณผ ๋™์ผ

๋””ํดํŠธ ์ธ์ˆ˜


  • ๋งค๊ฐœ๋ณ€์ˆ˜์— ๊ธฐ๋ณธ๊ฐ’ ์ง€์ •ํ•˜์—ฌ ์‚ฌ์šฉ
  • ์•„๋ฌด๋Ÿฐ ๊ฐ’๋„ ์ž…๋ ฅ๋˜์ง€ ์•Š์„ ๋Œ€ ๊ธฐ๋ณธ๊ฐ’ ์‚ฌ์šฉ
def print_name_2(my_name, your_name = "TEAMLAB"):
	print('Hello {0}, My name is {l}'.format(your_name, my_name)) 
		
print_name_2("kyuree", "TEAMLAB")
#Hello TEAMLAB, My name is kyuree

print_name_2("kyuree")
#Hello TEAMLAB, My name is kyuree
  • def print_name_2(my_name, your_name = "TEAMLAB"):
    • your_name ๋งค๊ฐœ๋ณ€์ˆ˜์— ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ‘TEAMLAB’ ์ง€์ •
    • ๋ณ„๋„์˜ ๊ฐ’ ํ• ๋‹นํ•˜์ง€ ์•Š์•„๋„ ์ž‘๋™
  • ๋””ํดํŠธ ์ธ์ˆ˜ ์‚ฌ์šฉํ•  ๋•Œ ์ดˆ๊นƒ๊ฐ’ ์ž…๋ ฅํ•ด์ฃผ๊ธฐ๋„ ํ•จ
    • ex. ์ดˆ๊นƒ๊ฐ’ : ‘0’
      • ‘init =0 ‘
      • ‘init = None’

๊ฐ€๋ณ€ ์ธ์ˆ˜


  • ๋งค๊ฐœ๋ณ€์ˆ˜ ๊ฐœ์ˆ˜ ์ •ํ•˜์ง€ ์•Š์„ ๋•Œ
    • ๊ณ ๊ฐ์ด ๋ช‡ ๊ฐœ ๋ฌผ๊ฑด ๊ตฌ๋งคํ• ์ง€ ๋ชจ๋ฅด๋Š” ๋งˆํŠธ ๊ณ„์‚ฐ๊ธฐ์—์„œ ํ•ฉ์‚ฐํ•  ๋•Œ
  • ๊ฐ€๋ณ€์ธ์ˆ˜ → ***(asterisk)**๋กœ ํ‘œํ˜„
      • ๊ณฑ์…ˆ
      • ์ œ๊ณฑ ์—ฐ์‚ฐ
      • ๋ณ€์ˆ˜ ๋ฌถ์–ด์ฃผ๋Š” ๊ฐ€๋ณ€ ์ธ์ˆ˜ ๋งŒ๋“ค ๋•Œ
def asterisk_test(a,b,*args):
	return a + b +sum(args)

print(asterisk_test(1,2,3,4,5))
#15
  • a,b ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์กด์žฌ
    • 1, 2
  • ๋‚˜๋จธ์ง€๋ฅผ *args๋กœ ๋„˜๊ฒจ ๋ฐ›์Œ
    • 3,4,5
  • *args → ๊ฐ€๋ณ€ ์ธ์ˆ˜
    • ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰์œผ๋กœ ์„ ์–ธ๋˜์–ด์•ผ ํ•จ

ํ‚ค์›Œ๋“œ ๊ฐ€๋ณ€ ์ธ์ˆ˜


  • ๊ฐ€๋ณ€ ์ธ์ˆ˜
    • ๋ณ€์ˆ˜ ์ˆœ์„œ๋Œ€๋กœ ํŠœํ”Œ ํ˜•ํƒœ๋กœ ์ €์žฅ
    • ๋ณ€์ˆ˜ ์ด๋ฆ„ ์ง€์ •ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๋‹จ์  ์กด์žฌ
  • ๋‹จ์  ๋ณด์™„ํ•œ ๊ฒƒ์ด ํ‚ค์›Œ๋“œ ๊ฐ€๋ณ€ ์ธ์ˆ˜!
  • *args → **kwargs
def kwargs_test(**kwargs):
	print(kwargs)
	print("First value is {first}".format(**kwargs))
	print("Second value is {second}".format(**kwargs))
	print("Third value is {third}".format(**kwargs))

kwargs_test(first =3, second =4, third = 5)

  • print(kwargs)
    • ํ‚ค์›Œ๋“œ ์ธ์ˆ˜ ์ง€์ •
      • kwargs_test(first =3, second =4, third = 5)
    • {’first’ :3, ‘second ‘: 4, ‘third:’: 5}
      • ๋”•์…”๋„ˆ๋ฆฌ ์ž๋ฃŒํ˜• → ํ‚ค์™€ ๊ฐ’์ด ์ผ๋Œ€์ผ ๋Œ€์‘