๋ฐ˜์‘ํ˜•

๐ŸŽˆ ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ (External Libraries)

Python์˜ ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ๋‚˜ ํŠน์ • ๊ฐœ๋ฐœ์ž๊ฐ€ ์ œ๊ณตํ•˜๋Š” ํŒจํ‚ค์ง€๋กœ, ๊ธฐ๋ณธ ์„ค์น˜๋œ ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์™ธ์—๋„ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค. ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ ๋ถ„์„, ์›น ์Šคํฌ๋ž˜ํ•‘, HTTP ์š”์ฒญ ๋“ฑ ๋‹ค์–‘ํ•œ ์ž‘์—…์— ์œ ์šฉํ•˜๋ฉฐ, pip ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž๋ฅผ ํ†ตํ•ด ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋‹ค. ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋จผ์ € ์„ค์น˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค.์„ค์น˜ ํ›„, import ํ‚ค์›Œ๋“œ๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

1. pandas

๋ฐ์ดํ„ฐ ๋ถ„์„์„ ์œ„ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

pandas๋Š” ๋ฐ์ดํ„ฐ ๋ถ„์„๊ณผ ์กฐ์ž‘์— ์œ ์šฉํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ, ํ…Œ์ด๋ธ” ํ˜•์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๊ธฐ์— ํŽธ๋ฆฌํ•˜๋‹ค. ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„(DataFrame)์ด๋ผ๋Š” ๊ตฌ์กฐ๋ฅผ ํ†ตํ•ด ํ–‰๊ณผ ์—ด๋กœ ๊ตฌ์„ฑ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์‰ฝ๊ฒŒ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์„ค์น˜ ๋ช…๋ น์–ด: pip install pandas
import pandas as pd

# ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„ ์ƒ์„ฑ
data = {'Name': ['Karina', 'Winter', 'Ningning', 'Giselle'], 'Age': [24, 23, 21, 23]}
df = pd.DataFrame(data)
print(df)

# ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์˜ ํŠน์ • ์—ด ์ถœ๋ ฅ
print(df['Name'])  # Output: Name ์—ด์˜ ๊ฐ’

# ๊ธฐ์ดˆ ํ†ต๊ณ„ ์ •๋ณด ์ถœ๋ ฅ
print(df.describe())  # ๋ฐ์ดํ„ฐ์˜ ํ†ต๊ณ„ ์š”์•ฝ ์ •๋ณด

# DataFrame์„ Excel ํŒŒ์ผ๋กœ ์ €์žฅ
df.to_excel('aespa_data.xlsx', index=False)
  • to_excel() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ DataFrame์„ Excel ํŒŒ์ผ๋กœ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.( openpyxl ๋˜๋Š” xlsxwriter ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์„ค์น˜)
  • ์„ค์น˜ ๋ช…๋ น์–ด: pip install openpyxl
  •  index=False: ์ด ์˜ต์…˜์€ DataFrame์˜ ์ธ๋ฑ์Šค๋ฅผ ํŒŒ์ผ์— ํฌํ•จ์‹œํ‚ค์ง€ ์•Š๋„๋ก ์„ค์ •ํ•œ๋‹ค. ๋งŒ์•ฝ ์ธ๋ฑ์Šค๋ฅผ ํฌํ•จํ•˜๋ ค๋ฉด index=True๋กœ ์„ค์ •ํ•˜๊ฑฐ๋‚˜, ์˜ต์…˜์„ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ๋‹ค.

โญ ํ„ฐ๋ฏธ๋„ ์ถœ๋ ฅ ๊ฒฐ๊ณผ

2. requests

HTTP ์š”์ฒญ์„ ๋ณด๋‚ด๊ธฐ ์œ„ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ. 

HTTP ์š”์ฒญ์„ ์‰ฝ๊ฒŒ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ, ์›น API๋ฅผ ํ˜ธ์ถœํ•˜๊ฑฐ๋‚˜ ์›น ํŽ˜์ด์ง€์˜ HTML์„ ๊ฐ€์ ธ์˜ฌ ๋•Œ ์ž์ฃผ ์‚ฌ์šฉ๋œ๋‹ค.

  • ์„ค์น˜ ๋ช…๋ น์–ด: pip install requests

โœ… GET ์š”์ฒญ 

import requests

response = requests.get("https://api.github.com")
print(response.status_code)   # ์‘๋‹ต ์ƒํƒœ ์ฝ”๋“œ ์ถœ๋ ฅ
print(response.json())        # JSON ํ˜•์‹์˜ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์ถœ๋ ฅ

 

 

  • requests.get()๋Š” GET ์š”์ฒญ์„ ๋ณด๋‚ด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๋ฉ”์„œ๋“œ.
  • https://api.github.com์€ GitHub์˜ API ์—”๋“œํฌ์ธํŠธ๋กœ, ๊ธฐ๋ณธ์ ์ธ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
  • response.status_code: HTTP ์ƒํƒœ ์ฝ”๋“œ ์ถœ๋ ฅ. 200์€ ์š”์ฒญ์ด ์„ฑ๊ณต์ ์œผ๋กœ ์ฒ˜๋ฆฌ๋˜์—ˆ์Œ์„ ์˜๋ฏธํ•œ๋‹ค.
  • response.json(): JSON ํ˜•์‹์œผ๋กœ ์‘๋‹ต ๋ฐ์ดํ„ฐ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

โœ… POST ์š”์ฒญ 

import requests

data = {'key': 'value'}
response = requests.post("https://httpbin.org/post", data=data)
print(response.json())        # JSON ํ˜•์‹์˜ ์‘๋‹ต ๋ฐ์ดํ„ฐ ์ถœ๋ ฅ

 

 

  • requests.post(): POST ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” ๋ฉ”์„œ๋“œ๋กœ, ์ฃผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์„œ๋ฒ„์— ์ „์†กํ•  ๋•Œ ์‚ฌ์šฉํ•จ.
  • data=data: ์„œ๋ฒ„๋กœ ์ „์†กํ•  ๋ฐ์ดํ„ฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ์‹œ์ฝ”๋“œ์—์„œ๋Š” {'key': 'value'}๋ผ๋Š” ๋”•์…”๋„ˆ๋ฆฌ๋ฅผ ๋ฐ์ดํ„ฐ๋กœ ์ „์†ก.
  • https://httpbin.org/post: httpbin.org๋Š” ํ…Œ์ŠคํŠธ์šฉ์œผ๋กœ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ์„œ๋น„์Šค๋กœ, ์š”์ฒญ์„ ๊ทธ๋Œ€๋กœ ๋˜๋Œ๋ ค์ค€๋‹ค.
  • response.json(): JSON ํ˜•์‹์œผ๋กœ ์‘๋‹ต ๋ฐ์ดํ„ฐ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

 

3. tqdm

๋ฐ˜๋ณต ์ž‘์—…์˜ ์ง„ํ–‰ ์ƒํƒœ๋ฅผ ์‹œ๊ฐ์ ์œผ๋กœ ๋ณด์—ฌ์ฃผ๋Š” ํ”„๋กœ๊ทธ๋ ˆ์Šค ๋ฐ” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ.

  • ์„ค์น˜ ๋ช…๋ น์–ด: pip install tqdm

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

from tqdm import tqdm
import time

# tqdm์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ˜๋ณต ์ž‘์—…์— ํ”„๋กœ๊ทธ๋ ˆ์Šค ๋ฐ” ์ ์šฉ
for i in tqdm(range(10)):
    time.sleep(0.1)  # ์ž‘์—…์„ ์ง€์—ฐ์‹œ์ผœ ์ง„ํ–‰ ์ƒํƒœ๋ฅผ ํ™•์ธ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•จ
  • for i in tqdm(range(10)): range(10)์€ 0๋ถ€ํ„ฐ 9๊นŒ์ง€ 10๋ฒˆ ๋ฐ˜๋ณต๋˜๋Š” ๋ฃจํ”„๋ฅผ ์ƒ์„ฑํ•˜๋ฉฐ, tqdm์„ ํ†ตํ•ด ๊ฐ ๋ฐ˜๋ณต์„ ์‹œ๊ฐ์ ์œผ๋กœ ๋ณด์—ฌ์ค€๋‹ค.
  • time.sleep(0.1): ๊ฐ ๋ฐ˜๋ณต ์‚ฌ์ด์— 0.1์ดˆ์˜ ์ง€์—ฐ์„ ์ถ”๊ฐ€ํ•œ๋‹ค. ์ด ์ง€์—ฐ์ด ์—†์œผ๋ฉด ํ”„๋กœ๊ทธ๋ ˆ์Šค ๋ฐ”๊ฐ€ ๋„ˆ๋ฌด ๋น ๋ฅด๊ฒŒ ์ง€๋‚˜๊ฐ€, ์ง„ํ–‰ ์ƒํƒœ๋ฅผ ํ™•์ธํ•˜๊ธฐ ์–ด๋ ค์šธ ์ˆ˜ ์žˆ๋‹ค.

4. numpy

๋ฐฐ์—ด ๋ฐ ํ–‰๋ ฌ ์—ฐ์‚ฐ์— ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ. ๋ฐ์ดํ„ฐ ๋ถ„์„๊ณผ ๊ณผํ•™ ๊ณ„์‚ฐ์—์„œ ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค.

  • ์„ค์น˜ ๋ช…๋ น์–ด: pip install numpy
import numpy as np

# ๋ฐฐ์—ด ์ƒ์„ฑ ๋ฐ ์—ฐ์‚ฐ
array = np.array([1, 2, 3, 4])
print(array * 2)  # Output: [2 4 6 8]

# 2์ฐจ์› ๋ฐฐ์—ด ์ƒ์„ฑ
matrix = np.array([[1, 2], [3, 4]])
print(matrix)

5. matplotlib

๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”๋ฅผ ์œ„ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ. ๊ทธ๋ž˜ํ”„์™€ ์ฐจํŠธ๋ฅผ ๊ทธ๋ฆฌ๋Š” ๋ฐ ์œ ์šฉํ•˜๋‹ค.

  • ์„ค์น˜ ๋ช…๋ น์–ด: pip install matplotlib
import matplotlib.pyplot as plt

# ๊ฐ„๋‹จํ•œ ๋ผ์ธ ๊ทธ๋ž˜ํ”„ ๊ทธ๋ฆฌ๊ธฐ
x = [1, 2, 3, 4]
y = [10, 20, 25, 30]
plt.plot(x, y)
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
plt.title('Simple Line Plot')
plt.show()
๋ฐ˜์‘ํ˜•
๋ฐ˜์‘ํ˜•

๐ŸŽˆ ๋‚ด์žฅํ•จ์ˆ˜

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

 

 

- abs(): ์ˆซ์ž์˜ ์ ˆ๋Œ€๊ฐ’์„ ๋ฐ˜ํ•˜๋Š” ํ•จ์ˆ˜.

    print(abs(-5)) # ์ถœ๋ ฅ: 5

 

- all(): ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด(๋ฆฌ์ŠคํŠธ, ํŠœํ”Œ ๋“ฑ) ์•ˆ์˜ ๋ชจ๋“  ๊ฐ’์ด ์ฐธ์ด๋ฉด True๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

    print(all([True, 1, "hello"])) # ์ถœ๋ ฅ: True

 

- any(): ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด ์•ˆ์˜ ๊ฐ’ ์ค‘ ํ•˜๋‚˜๋ผ๋„ ์ฐธ์ด๋ฉด True๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

    print(any([False, 0, None, "text"])) # ์ถœ๋ ฅ: True

 

- chr(): ์œ ๋‹ˆ์ฝ”๋“œ ๊ฐ’์„ ๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  print(chr(65))  # ์ถœ๋ ฅ: 'A'

 

- ord(): ๋ฌธ์ž์˜ ์œ ๋‹ˆ์ฝ”๋“œ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  print(ord('A'))  # ์ถœ๋ ฅ: 65

 

- divmod(): ๋‘ ์ˆ˜๋ฅผ ๋‚˜๋ˆˆ ๋ชซ๊ณผ ๋‚˜๋จธ์ง€๋ฅผ ํŠœํ”Œ๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  print(divmod(10, 3))  # ์ถœ๋ ฅ: (3, 1)

 

- enumerate(): ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด(๋ฆฌ์ŠคํŠธ ๋“ฑ)์—์„œ ์ธ๋ฑ์Šค์™€ ๊ฐ’์„ ํ•จ๊ป˜ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  fruits = ['apple', 'banana']
  for index, fruit in enumerate(fruits):
      print(index, fruit)
  # ์ถœ๋ ฅ:
  # 0 apple
  # 1 banana

 

- eval(): ๋ฌธ์ž์—ด ํ˜•ํƒœ์˜ ํ‘œํ˜„์‹์„ ์‹คํ–‰ํ•˜๋Š” ํ•จ์ˆ˜.

  print(eval("3 + 5"))  # ์ถœ๋ ฅ: 8

 

- filter(): ํ•จ์ˆ˜์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์š”์†Œ๋งŒ ๊ฑธ๋Ÿฌ๋‚ด๋Š” ํ•จ์ˆ˜.

  numbers = [1, 2, 3, 4, 5]
  even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
  print(even_numbers)  # ์ถœ๋ ฅ: [2, 4]

 

- hex(): ์ •์ˆ˜๋ฅผ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  print(hex(255))  # ์ถœ๋ ฅ: '0xff'

 

- id(): ๊ฐ์ฒด์˜ ๊ณ ์œ ํ•œ ID ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  a = 3
  print(id(a))  # ์ถœ๋ ฅ: ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๊ฐ’ (์˜ˆ: 140722945015568)

 

- int(): ๋ฌธ์ž์—ด์ด๋‚˜ ์‹ค์ˆ˜๋ฅผ ์ •์ˆ˜๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  print(int("10"))  # ์ถœ๋ ฅ: 10
  print(int(3.14))  # ์ถœ๋ ฅ: 3

 

- isinstance(): ์ธ์Šคํ„ด์Šค๊ฐ€ ํŠน์ • ํด๋ž˜์Šค์˜ ์ธ์Šคํ„ด์Šค์ธ์ง€ ํ™•์ธํ•˜๋Š” ํ•จ์ˆ˜.

  print(isinstance(5, int))  # ์ถœ๋ ฅ: True

 

- len(): ๊ฐ์ฒด(๋ฌธ์ž์—ด, ๋ฆฌ์ŠคํŠธ ๋“ฑ)์˜ ๊ธธ์ด๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  print(len("hello"))  # ์ถœ๋ ฅ: 5

 

- list(): ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด๋ฅผ ๋ฆฌ์ŠคํŠธ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  print(list("hello"))  # ์ถœ๋ ฅ: ['h', 'e', 'l', 'l', 'o']

 

- map(): ๋ฆฌ์ŠคํŠธ ๋“ฑ์˜ ๊ฐ ์š”์†Œ์— ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•˜๋Š” ํ•จ์ˆ˜.

  numbers = [1, 2, 3]
  print(list(map(str, numbers)))  # ์ถœ๋ ฅ: ['1', '2', '3']

 

- max(): ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด์˜ ์ตœ๋Œ“๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  numbers = [10, 20, 30]
  print(max(numbers))  # ์ถœ๋ ฅ: 30

 

- min(): ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด์˜ ์ตœ์†Ÿ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  numbers = [10, 20, 30]
  print(min(numbers))  # ์ถœ๋ ฅ: 10

 

- pow(): x์˜ y ์ œ๊ณฑ์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  print(pow(2, 3))  # ์ถœ๋ ฅ: 8

 

- range(): ์ •์ˆ˜ ๋ฒ”์œ„๋ฅผ ์ƒ์„ฑํ•˜๋Š” ํ•จ์ˆ˜.

  print(list(range(5)))  # ์ถœ๋ ฅ: [0, 1, 2, 3, 4]

 

- round(): ์ˆซ์ž๋ฅผ ๋ฐ˜์˜ฌ๋ฆผํ•˜๋Š” ํ•จ์ˆ˜.

  print(round(3.14159, 2))  # ์ถœ๋ ฅ: 3.14

 

- sorted(): ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด๋ฅผ ์ •๋ ฌ๋œ ๋ฆฌ์ŠคํŠธ๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  numbers = [5, 2, 9, 1]
  print(sorted(numbers))  # ์ถœ๋ ฅ: [1, 2, 5, 9]

 

- str(): ๊ฐ์ฒด๋ฅผ ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  num = 100
  print(str(num))  # ์ถœ๋ ฅ: '100'

 

- sum(): ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด์˜ ํ•ฉ์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  numbers = [1, 2, 3, 4, 5]
  print(sum(numbers))  # ์ถœ๋ ฅ: 15

 

- tuple(): ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด๋ฅผ ํŠœํ”Œ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜.

  print(tuple("hello"))  # ์ถœ๋ ฅ: ('h', 'e', 'l', 'l', 'o')

 

- zip(): ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฆฌ์ŠคํŠธ๋‚˜ ํŠœํ”Œ์„ ์ง์ง€์–ด์ฃผ๋Š” ํ•จ์ˆ˜.

  names = ["Alice", "Bob"]
  scores = [90, 85]
  print(list(zip(names, scores)))  # ์ถœ๋ ฅ: [('Alice', 90), ('Bob', 85)]
๋ฐ˜์‘ํ˜•
๋ฐ˜์‘ํ˜•

์˜ˆ์™ธ ์ฒ˜๋ฆฌ (Exception Handling)

์˜ˆ์™ธ ์ฒ˜๋ฆฌ๋Š” ์ฝ”๋“œ ์‹คํ–‰ ์ค‘ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์˜ค๋ฅ˜ ์ƒํ™ฉ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

try, except, finally ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์˜ˆ์™ธ ๋ฐœ์ƒ ์‹œ ์ฝ”๋“œ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ์ข…๋ฃŒํ•˜๊ฑฐ๋‚˜ ํŠน์ • ๋™์ž‘์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

1. ๊ธฐ๋ณธ์ ์ธ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ๊ตฌ์กฐ

try:
    # ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋Š” ์ฝ”๋“œ
except ExceptionType:
    # ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์‹คํ–‰๋˜๋Š” ์ฝ”๋“œ
else:
    # ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์•˜์„ ๋•Œ ์‹คํ–‰๋˜๋Š” ์ฝ”๋“œ
finally:
    # ์˜ˆ์™ธ ๋ฐœ์ƒ ์—ฌ๋ถ€์™€ ์ƒ๊ด€์—†์ด ํ•ญ์ƒ ์‹คํ–‰๋˜๋Š” ์ฝ”๋“œ

 

  • try: ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ. ์˜ˆ๋ฅผ ๋“ค์–ด ํŒŒ์ผ์„ ์—ด๊ฑฐ๋‚˜, ์ˆซ์ž๋ฅผ 0์œผ๋กœ ๋‚˜๋ˆ„๋Š” ๋“ฑ์˜ ์ž‘์—…์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ๋‹ค.
  • except: ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์‹คํ–‰ํ•  ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ. ๋ฐœ์ƒํ•œ ์˜ˆ์™ธ ์œ ํ˜•์— ๋”ฐ๋ผ ์—ฌ๋Ÿฌ ๊ฐœ์˜ except ๋ธ”๋ก์„ ์ง€์ •ํ•  ์ˆ˜๋„ ์žˆ๋‹ค.
  • else: ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์•˜์„ ๋•Œ ์‹คํ–‰๋˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ. else๋Š” ์„ ํƒ ์‚ฌํ•ญ์œผ๋กœ, try ๋ธ”๋ก์ด ์„ฑ๊ณต์ ์œผ๋กœ ์™„๋ฃŒ๋œ ๊ฒฝ์šฐ์—๋งŒ ์‹คํ–‰๋œ๋‹ค.
  • finally: ์˜ˆ์™ธ ๋ฐœ์ƒ ์—ฌ๋ถ€์™€ ์ƒ๊ด€์—†์ด ํ•ญ์ƒ ์‹คํ–‰๋˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ. ํŒŒ์ผ์„ ์—ด์—ˆ๋‹ค๋ฉด ๋‹ซ๋Š” ์ž‘์—…์„ ์—ฌ๊ธฐ์— ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค.

# ์˜ˆ์ œ ์ฝ”๋“œ 

์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ์ˆซ์ž๋ฅผ 100์œผ๋กœ ๋‚˜๋ˆ„๋Š” ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ,์—ฌ๊ธฐ์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ValueError์™€ ZeroDivisionError ์˜ˆ์™ธ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์ฝ”๋“œ

try:
    num = int(input("์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”: "))
    result = 100 / num
except ValueError:
    print("์œ ํšจํ•œ ์ˆซ์ž๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”.")
except ZeroDivisionError:
    print("0์œผ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.")
else:
    print(f"๊ฒฐ๊ณผ: {result}")
finally:
    print("ํ”„๋กœ๊ทธ๋žจ์ด ์ข…๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.")
  • try ๋ธ”๋ก์—์„œ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๊ฐ’์„ ์ •์ˆ˜๋กœ ๋ณ€ํ™˜ํ•œ ํ›„, 100์„ ๊ทธ ๊ฐ’์œผ๋กœ ๋‚˜๋ˆ„๋Š” ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰.
  • except ValueError ๋ธ”๋ก์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ˆซ์ž๊ฐ€ ์•„๋‹Œ ๊ฐ’์„ ์ž…๋ ฅํ–ˆ์„ ๋•Œ ์‹คํ–‰๋˜๋ฉฐ, "์œ ํšจํ•œ ์ˆซ์ž๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค"๋ผ๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅ.
  • except ZeroDivisionError ๋ธ”๋ก์€ ์‚ฌ์šฉ์ž๊ฐ€ 0์„ ์ž…๋ ฅํ–ˆ์„ ๋•Œ ์‹คํ–‰๋˜๋ฉฐ, "0์œผ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค"๋ผ๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅ.
  • else ๋ธ”๋ก์€ ์˜ˆ์™ธ๊ฐ€ ์—†์„ ๊ฒฝ์šฐ ์‹คํ–‰๋˜๋ฉฐ, ๋‚˜๋ˆ—์…ˆ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅ.
  • finally ๋ธ”๋ก์€ ์˜ˆ์™ธ ๋ฐœ์ƒ ์—ฌ๋ถ€์™€ ๊ด€๊ณ„์—†์ด ํ•ญ์ƒ ์‹คํ–‰๋˜๋ฉฐ, "ํ”„๋กœ๊ทธ๋žจ์ด ์ข…๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค"๋ผ๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅ.

์ด์™€ ๊ฐ™์€ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ๋ฐฉ์‹์œผ๋กœ ํ”„๋กœ๊ทธ๋žจ์€ ์˜ค๋ฅ˜ ์ƒํ™ฉ์—์„œ๋„ ์•ˆ์ „ํ•˜๊ฒŒ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

 

 

๋ฐ˜์‘ํ˜•
๋ฐ˜์‘ํ˜•

ํ•จ์ˆ˜ (Functions)

1. ํ•จ์ˆ˜ ์ •์˜ (Defining a Function)

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

def greet(name):
    print(f"์•ˆ๋…•ํ•˜์„ธ์š”, {name}๋‹˜!")

greet("์ฒ ์ˆ˜")  # ์ถœ๋ ฅ: ์•ˆ๋…•ํ•˜์„ธ์š”, ์ฒ ์ˆ˜๋‹˜!

2. ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ์ธ์ž (Parameters and Arguments)

ํ•จ์ˆ˜๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ์™ธ๋ถ€์—์„œ ๊ฐ’์„ ์ „๋‹ฌ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค. ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ ์ „๋‹ฌ๋˜๋Š” ๊ฐ’์„ ์ธ์ž๋ผ๊ณ  ํ•œ๋‹ค. ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•œ ๊ฒƒ๊ณผ ๊ฐ™์€ ์—ญํ• ์„ ํ•œ๋‹ค.

def add(a, b):
    return a + b

result = add(3, 4)
print(result)  # ์ถœ๋ ฅ: 7

3. ๊ธฐ๋ณธ ๋งค๊ฐœ๋ณ€์ˆ˜ (Default Parameters)

ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•  ๋•Œ ๊ธฐ๋ณธ๊ฐ’์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ ํ•ด๋‹น ์ธ์ž๊ฐ€ ์ „๋‹ฌ๋˜์ง€ ์•Š์œผ๋ฉด ๊ธฐ๋ณธ๊ฐ’์ด ์‚ฌ์šฉ๋œ๋‹ค.

๊ธฐ๋ณธ ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ์ˆœ์„œ๊ฐ€ ์ค‘์š”ํ•˜๋ฉฐ, ๊ธฐ๋ณธ๊ฐ’์ด ์—†๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋ณด๋‹ค ๋’ค์— ์œ„์น˜ํ•ด์•ผ ํ•œ๋‹ค.

def greet(name="์นœ๊ตฌ"):
    print(f"์•ˆ๋…•ํ•˜์„ธ์š”, {name}๋‹˜!")

greet()  # ์ถœ๋ ฅ: ์•ˆ๋…•ํ•˜์„ธ์š”, ์นœ๊ตฌ๋‹˜!
greet("์˜ํฌ")  # ์ถœ๋ ฅ: ์•ˆ๋…•ํ•˜์„ธ์š”, ์˜ํฌ๋‹˜!

1. ๊ธฐ๋ณธ ๋งค๊ฐœ๋ณ€์ˆ˜ ์ •์˜ ๋ฐ ๊ทœ์น™

๊ธฐ๋ณธ๊ฐ’์ด ์—†๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๋จผ์ € ์ž‘์„ฑ๋˜๊ณ , ๊ธฐ๋ณธ๊ฐ’์ด ์žˆ๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๋’ค์— ์ž‘์„ฑํ•ด์•ผ ํ•œ๋‹ค.

๊ธฐ๋ณธ๊ฐ’์ด ์—†๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๋ฐ˜๋“œ์‹œ ๊ธฐ๋ณธ๊ฐ’์ด ์žˆ๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋ณด๋‹ค ์•ž์— ์œ„์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

def add(a, b=3):
    return a + b
    
# a ๊ฐ’๋งŒ ์ „๋‹ฌํ•˜๋ฉด b๋Š” ๊ธฐ๋ณธ๊ฐ’ 3์„ ์‚ฌ์šฉ
print(add(2))  # ์ถœ๋ ฅ: 5

์ด ํ•จ์ˆ˜๋Š” a๋Š” ํ•„์ˆ˜ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋ฐ›๊ณ , b๋Š” ๊ธฐ๋ณธ๊ฐ’ 3์„ ๊ฐ€์ง„๋‹ค. ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ b ๊ฐ’์„ ์ œ๊ณตํ•˜์ง€ ์•Š์œผ๋ฉด ๊ธฐ๋ณธ๊ฐ’์ด ์‚ฌ์šฉ๋œ๋‹ค.

 

์ž˜๋ชป๋œ ๋งค๊ฐœ๋ณ€์ˆ˜ ์‚ฌ์šฉ ์˜ˆ์‹œ:: ๊ธฐ๋ณธ๊ฐ’์ด ์—†๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๋ฐ˜๋“œ์‹œ ๊ธฐ๋ณธ๊ฐ’์ด ์žˆ๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋ณด๋‹ค ์•ž์— ์œ„์น˜ํ•ด์•ผ ํ•œ๋‹ค.

def add(a=1, b):
    return a + b

print(add(b=3))  
# ์˜ค๋ฅ˜ ๋ฐœ์ƒ: ๊ธฐ๋ณธ๊ฐ’์ด ์—†๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜ b๊ฐ€ ๊ธฐ๋ณธ๊ฐ’์ด ์žˆ๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜ a ๋’ค์— ์œ„์น˜ํ•ด ์žˆ์–ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒ.
# ๊ธฐ๋ณธ๊ฐ’์ด ์—†๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜ b๋Š” ๊ธฐ๋ณธ๊ฐ’์ด ์žˆ๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜ a ์•ž์— ์œ„์น˜ํ•ด์•ผ ํ•จ.

# ์ˆ˜์ •๋œ ํ•จ์ˆ˜
def add(b, a=1):
    return a + b

print(add(b=3))  # ์ถœ๋ ฅ: 4

 

4. ๋ฐ˜ํ™˜๊ฐ’ (Return Value)

ํ•จ์ˆ˜๋Š” return ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•  ์ˆ˜ ์žˆ๋‹ค. return์„ ๋งŒ๋‚˜๋ฉด ํ•จ์ˆ˜๋Š” ์‹คํ–‰์„ ์ข…๋ฃŒํ•˜๊ณ , ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๋ฐ˜ํ™˜๋œ ๊ฐ’์€ ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ ๋ณ€์ˆ˜์— ์ €์žฅ๋˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๊ณ„์‚ฐ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

def multiply(a, b):
    return a * b

result = multiply(5, 6)
print(result)  # ์ถœ๋ ฅ: 30

5. ๊ฐ€๋ณ€ ์ธ์ž (Variable-length Arguments)

 

๊ฐ€๋ณ€ ์ธ์ž๋Š” ํ•จ์ˆ˜๊ฐ€ ๋ช‡ ๊ฐœ์˜ ์ธ์ž๋ฅผ ๋ฐ›์„์ง€ ๋ฏธ๋ฆฌ ์•Œ ์ˆ˜ ์—†์„ ๋•Œ ์‚ฌ์šฉ๋œ๋‹ค.

*args๋Š” ์œ„์น˜ ๊ธฐ๋ฐ˜์˜ ๊ฐ€๋ณ€ ์ธ์ž๋ฅผ, **kwargs๋Š” ํ‚ค์›Œ๋“œ ๊ธฐ๋ฐ˜์˜ ๊ฐ€๋ณ€ ์ธ์ž๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

ํ•˜๋‚˜์˜ ํ•จ์ˆ˜์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ธ์ž๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.

 

*args

  • *args๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์œ„์น˜ ์ธ์ž๋ฅผ ํ•˜๋‚˜์˜ ํŠœํ”Œ๋กœ ๋ฐ›๋Š”๋‹ค.
  • ์ธ์ž ๊ฐœ์ˆ˜๊ฐ€ ์ •ํ•ด์ ธ ์žˆ์ง€ ์•Š์„ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.
def sum_all(*args):
    return sum(args)

result = sum_all(1, 2, 3, 4, 5)
print(result)  # ์ถœ๋ ฅ: 15

 

**kwargs

  • **kwargs๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ‚ค์›Œ๋“œ ์ธ์ž๋ฅผ ํ•˜๋‚˜์˜ ๋”•์…”๋„ˆ๋ฆฌ๋กœ ๋ฐ›๋Š”๋‹ค.
  • kwargs.items()๋Š” ๋”•์…”๋„ˆ๋ฆฌ์˜ ํ‚ค์™€ ๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.
def print_info(**kwargs):
    for key, value in kwargs.items():
        print(f"{key}: {value}")

print_info(name="์˜ํฌ", age=30)  
# ์ถœ๋ ฅ:
# name: ์˜ํฌ
# age: 30

 

+) JavaScript์—์„œ๋„ ์œ ์‚ฌํ•˜๊ฒŒ ๊ฐ€๋ณ€ ์ธ์ž๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. 

์Šคํ”„๋ ˆ๋“œ ์—ฐ์‚ฐ์ž(...)๋Š” Python์˜ *args์™€ ์œ ์‚ฌํ•˜๊ฒŒ ๋™์ž‘ํ•˜๋ฉฐ, ๊ฐ์ฒด๋กœ ๋ฐ›์€ ์ธ์ž๋Š” kwargs์™€ ๋น„์Šทํ•˜๋‹ค.

// JavaScript์—์„œ ๊ฐ€๋ณ€ ์ธ์ž
function sumAll(...args) {
    return args.reduce((acc, cur) => acc + cur, 0);
}

console.log(sumAll(1, 2, 3, 4, 5));  // ์ถœ๋ ฅ: 15

// JavaScript์—์„œ ๊ฐ์ฒด ํ‚ค-๊ฐ’ ๋ฐ›๊ธฐ
function printInfo(obj) {
    for (let key in obj) {
        console.log(`${key}: ${obj[key]}`);
    }
}

printInfo({ name: "์˜ํฌ", age: 30 });
// ์ถœ๋ ฅ:// name: ์˜ํฌ// age: 30

6. ๋žŒ๋‹ค ํ•จ์ˆ˜ (Lambda Functions)

๋žŒ๋‹ค ํ•จ์ˆ˜๋Š” ์ต๋ช… ํ•จ์ˆ˜๋กœ, ์ด๋ฆ„ ์—†์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ„๋‹จํ•œ ํ•จ์ˆ˜์ด๋‹ค. ์ฃผ๋กœ ์ผํšŒ์„ฑ ํ•จ์ˆ˜๋‚˜ ์ฝ”๋“œ๊ฐ€ ์งง์„ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. lambda ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ, ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ๋ฐ˜ํ™˜๊ฐ’์„ ๊ฐ„๋‹จํžˆ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.

# ๋žŒ๋‹ค ํ•จ์ˆ˜ ์˜ˆ์‹œ
square = lambda x: x ** 2
print(square(5))  # ์ถœ๋ ฅ: 25

# ์ผ๋ฐ˜ ํ•จ์ˆ˜๋กœ ์ž‘์„ฑํ•œ ๊ฒฝ์šฐ
def square_fn(x):
    return x ** 2

print(square_fn(5))  # ์ถœ๋ ฅ: 25
  • lambda x : x๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜. ํ•จ์ˆ˜์˜ ์ธ์ž๋ฅผ ์˜๋ฏธํ•œ๋‹ค.
  • x ** 2 : **๋Š” ์ œ๊ณฑ ์—ฐ์‚ฐ์ž๋กœ, x์˜ ์ œ๊ณฑ์„ ๊ณ„์‚ฐํ•œ๋‹ค. ๋”ฐ๋ผ์„œ x๊ฐ€ 5๋ผ๋ฉด x ** 2๋Š” 5 ** 2๊ฐ€ ๋˜์–ด 25๊ฐ€ ๋œ๋‹ค.
  • x ** 3์€ x์˜ ์„ธ์ œ๊ณฑ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, x๋ฅผ 3๋ฒˆ ๊ณฑํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. x**3์€ 125(5์˜ ์„ธ์ œ๊ณฑ)๊ฐ€ ๋œ๋‹ค.
๋ฐ˜์‘ํ˜•

+ Recent posts