๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • Welcome.
:: Python ๐Ÿšฉ/๊ธฐ์ดˆ

[Python] 14_function_2 [์˜ค๋ฒ„๋กœ๋”ฉ ์ง€์›x]

by EunBird 2021. 3. 3.

ใ…กใ…กใ…กใ…กใ…ก

# ์ธ์ˆ˜๊ฐ€ ์—†๋Š” ํ•จ์ˆ˜ => ํ•จ์ˆ˜๊ฐ€ ์ฒ˜๋ฆฌํ•  ๋ฐ์ดํ„ฐ๋ฅผ ๋„˜๊ฒจ๋ฐ›์ง€ ์•Š๋Š” ํ•จ์ˆ˜
def func1():
    print('func1() ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. - 1')
  # ํ•จ์ˆ˜๊ฐ€ ๋๊นŒ์ง€ ์‹คํ–‰๋˜๊ฑฐ๋‚˜ return์„ ๋งŒ๋‚˜๋ฉด ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋œ ๊ณณ์œผ๋กœ ๋Œ์•„๊ฐ„๋‹ค. 

  # => return ๋’ค์˜ ๊ฐ’์ด ์žˆ์œผ๋ฉด ๊ฐ’์„ ๊ฐ€์ง€๊ณ  ๋Œ์•„๊ฐ„๋‹ค.
  # return์ด ์—†๊ฑฐ๋‚˜ return์ด ์žˆ๋”๋ผ๋„ ๋’ค์— ๊ฐ’์ด ์—†์œผ๋ฉด None์„ ๊ฐ€์ง€๊ณ  ๋Œ์•„๊ฐ„๋‹ค.
    return 'func1() ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. - 2'

ใ…กใ…กใ…กใ…กใ…ก

func1()
print('=' * 80)
string func1()
print(string)

ใ…กใ…กใ…กใ…กใ…ก

 

 

 

ใ…กใ…กใ…กใ…กใ…ก

func1() ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. - 1 ==========================================================================

func1() ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. - 1

func1() ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. - 2

ใ…กใ…กใ…กใ…กใ…ก

 

 

 

์ด๋ ‡๊ฒŒ ์ถœ๋ ฅ๋œ ์ด์œ :

 

    func1()

 

์— ์˜ํ•ด func1()ํ•จ์ˆ˜ ํ˜ธ์ถœ. 

 

          print('func1() ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. - 1')  -> ์‹คํ–‰. 

 

          return 'func1() ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. - 2' -> return์€ ์žˆ์ง€๋งŒ ๊ฐ’์ด ์—†์–ด์„œ None์„ ๋Œ๋ ค๋ฐ›์Œ.

 

  ๋Œ์•„์™€์„œ  print('=' * 80)  -> ์‹คํ–‰.

 

  string func1() 

 

์—์„œ func1() ์„ ํ˜ธ์ถœ. ->   print('func1() ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. - 1')  -> ์‹คํ–‰. 

 

๊ทธ ํ›„ string์— 'func1() ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. - 2' ๊ฐ€ ์ €์žฅ๋จ.

 

   ๋‹ค์‹œ ๋Œ์•„์™€์„œ print(string) ์— ์˜ํ•ด string์— ๋ฐฉ๊ธˆ ์ €์žฅ๋œ "func1() ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. - 2" ๋ฅผ ์ถœ๋ ฅ.

 

 

 

 

ํ•จ์ˆ˜ํ˜ธ์ถœ.


# ํŒŒ์ด์ฌ์€ ํ•จ์ˆ˜์˜ ์˜ค๋ฒ„๋กœ๋”ฉ์ด ์ง€์›๋˜์ง€ ์•Š๋Š”๋‹ค. => ์˜ค๋ฒ„๋กœ๋”ฉ ํšจ๊ณผ๋ฅผ ๋‚ด๋ ค๋ฉด ๊ฐ€๋ณ€ ์ธ์ž๋ฅผ ๊ฐ€์ง€๋Š” ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด 

์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.
์˜ค๋ฒ„๋กœ๋”ฉ => ๊ฐ™์€ ์ด๋ฆ„์œผ๋กœ ํ•จ์ˆ˜๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ๋งŒ๋“ค์–ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
# ํ•จ์ˆ˜ ์˜ค๋ฒ„๋กœ๋”ฉ์€ ์ด๋ฆ„์ด ๊ฐ™์€ ํ•จ์ˆ˜๊ฐ€ ์—ฌ๋Ÿฌ๊ฐœ ์žˆ์„ ๊ฒฝ์šฐ, ์ธ์ˆ˜์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋‹ค๋ฅด๋ฉด ์„œ๋กœ ๋‹ค๋ฅธ ํ•จ์ˆ˜๋กœ ์ทจ๊ธ‰ํ•œ๋‹ค.


# ๋งŒ์•ฝ์— ์ธ์ˆ˜์˜ ๊ฐœ์ˆ˜๋„ ๊ฐ™๋‹ค๋ฉด ์ธ์ˆ˜์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…์œผ๋กœ ํ•จ์ˆ˜๋ฅผ ์‹๋ณ„ํ•œ๋‹ค.
# ํŒŒ์ด์ฌ์€ ํ•จ์ˆ˜์˜ ์˜ค๋ฒ„๋กœ๋”ฉ์ด ์ง€์›๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— 

   ๊ฐ™์€ ์ด๋ฆ„์œผ๋กœ ํ•จ์ˆ˜๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ๋งŒ๋“ค๋ฉด ๋งจ ๋งˆ์ง€๋ง‰์— ์ •์˜ํ•œ ํ•จ์ˆ˜๋งŒ ์œ ํšจํ•˜๊ณ 
    ์•ž์—์„œ ๋งŒ๋“  ํ•จ์ˆ˜๋Š” ๋’ค์—์„œ ๋งŒ๋“  ํ•จ์ˆ˜๋กœ ๋ฎ์–ด์“ฐ๊ธฐ๊ฐ€ ๋˜์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฒŒ๋œ๋‹ค.

 

 

ใ…กใ…กใ…กใ…กใ…ก

# ๊ฒฐ๊ณผ๊ฐ’(return)์ด ์—†๋Š” ํ•จ์ˆ˜ => return์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฉด None์ด ๋ฆฌํ„ด๋œ๋‹ค.
def func2(a, b):
    print('{} + {} = {}'.format(a, b, a + b))
     
def func2(a, b, c):
    print('{} + {} + {} = {}'.format(a, b, c, a + b + c))

ใ…กใ…กใ…กใ…กใ…ก

func2(583)
print('=' * 80)
result func2(7, 6)
print(result)

ใ…กใ…กใ…กใ…กใ…ก

๊ฒฐ๊ณผ:

5 + 8 + 3 = 16 ================================================================================

---------------------------------------------------------------------------

TypeError                                  Traceback (most recent call last)

<ipython-input-3-2d8f81dfb1bc> in <module>

        1 func2(5, 8, 3)

        2 print('=' * 80)

----> 3 result = func2(7, 6)

        4 print(result)

 

TypeError: func2() missing 1 required positional argument: 'c'

 

 


 

 

์œ„์™€ ๊ฐ™์€ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค๋Š” ์ด์œ :

 

์ด๋ฆ„์ด ๊ฐ™์€ func2()ํ•จ์ˆ˜๋ฅผ 2๊ฐœ ์ •์˜ ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์—, 

๋” ๋‚˜์ค‘์— ์ •์˜ํ•œ, ์ฆ‰ ์ธ์ˆ˜๊ฐ€ 3๊ฐœ์ธ func2()๋กœ func2()๊ฐ€ ์ธ์‹๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

728x90

๋Œ“๊ธ€