๐ ํ์ด์ฌ์ด๋?
ํ์ด์ฌ(Python)์ 1991๋
๋ค๋๋๋ ํ๋ก๊ทธ๋๋จธ์ธ ๊ท๋ ๋ฐ ๋ก์ฌ(Guido van Rossum)์ด ๋ฐํํ ๊ณ ๊ธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์
๋๋ค.
๊ฐ๊ฒฐํ๊ณ ๊ฐ๋
์ฑ์ด ๋ฐ์ด๋ ๋ฌธ๋ฒ์ผ๋ก ์ธํด ์ด๋ณด์๋ ์ฝ๊ฒ ๋ฐฐ์ธ ์ ์์ผ๋ฉฐ,
๋ฐ์ดํฐ ๋ถ์, ์น ๊ฐ๋ฐ, ์ธ๊ณต์ง๋ฅ, ์๋ํ ๋ฑ ๋ค์ํ ๋ถ์ผ์์ ํญ๋๊ฒ ํ์ฉ๋๊ณ ์์ต๋๋ค.
โ
ํ์ด์ฌ์ ์ฃผ์ ํน์ง
ํน์ง |
์ค๋ช
|
๊ฐ๊ฒฐํ ๋ฌธ๋ฒ |
๋ค์ฌ์ฐ๊ธฐ๋ฅผ ํตํด ๋ธ๋ก์ ๊ตฌ๋ถํ์ฌ, ์ฝ๋๊ฐ ์๊ฐ์ ์ผ๋ก ๋ช
ํํจ |
๋์ ํ์ดํ(Dynamic Typing) |
๋ณ์์ ํ์
์ ๋ช
์ํ์ง ์์๋ ์๋์ผ๋ก ํ์
์ ์ถ๋ก |
ํ๋ซํผ ๋
๋ฆฝ์ |
์ด์์ฒด์ ์ ๊ด๊ณ์์ด ๋์ผํ ํ์ด์ฌ ์ฝ๋๋ฅผ ์คํ ๊ฐ๋ฅ |
์ธํฐํ๋ฆฌํฐ ์ธ์ด |
์ฝ๋๋ฅผ ํ ์ค์ฉ ์คํํ๋ฉฐ, ๋น ๋ฅธ ํ
์คํธ์ ๋๋ฒ๊น
๊ฐ๋ฅ |
ํ๋ถํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ |
๋ค์ํ ์ธ๋ถ ํจํค์ง๋ฅผ ํตํด ๊ธฐ๋ฅ์ ์์ฝ๊ฒ ํ์ฅ ๊ฐ๋ฅ |
๊ฐ์ฒด์งํฅ ์ง์ |
ํด๋์ค์ ๊ฐ์ฒด๋ฅผ ํตํ ์ฝ๋ ์ฌ์ฌ์ฉ ๋ฐ ๊ตฌ์กฐํ ๊ฐ๋ฅ |
๐ง ํ์ด์ฌ์ ํ์ฉ ๋ถ์ผ
๋ถ์ผํ์ฉ |
์์ |
์น ๊ฐ๋ฐ |
Django, Flask, FastAPI |
๋ฐ์ดํฐ ๋ถ์ |
Pandas, NumPy, Matplotlib |
๋จธ์ ๋ฌ๋/๋ฅ๋ฌ๋ |
Scikit-learn, TensorFlow, PyTorch |
์คํฌ๋ฆฝํธ ์๋ํ |
ํ์ผ ์ฒ๋ฆฌ, Excel ์๋ํ, ์น ํฌ๋กค๋ง |
๊ฒ์ ๊ฐ๋ฐ |
Pygame ๋ฑ |
๋ณด์/๋คํธ์ํฌ |
ํจํท ๋ถ์, ํดํน ๋๊ตฌ ๊ฐ๋ฐ |
IoT/์๋ฒ ๋๋ |
๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด ์ ์ด |
API ์๋ฒ ๊ตฌ์ถ |
RESTful API ์ค๊ณ ๋ฐ ๋ฐฐํฌ |
๐ ํ์ด์ฌ ๊ธฐ๋ณธ ๋ฌธ๋ฒ ์์
โ
๋ณ์์ ์๋ฃํ
name = "Alice"
age = 30
height = 168.5
is_active = True
โ
์กฐ๊ฑด๋ฌธ
if age > 18:
print("์ฑ์ธ์
๋๋ค.")
else:
print("๋ฏธ์ฑ๋
์์
๋๋ค.")
โ
๋ฐ๋ณต๋ฌธ
for i in range(5):
print(i)
while age > 0:
age -= 1
โ
ํจ์ ์ ์
def greet(name):
return f"์๋
ํ์ธ์, {name}๋!"
print(greet("ํ๊ธธ๋"))
โ
ํด๋์ค์ ๊ฐ์ฒด์งํฅ
class Person:
def __init__(self, name):
self.name = name
def greet(self):
print(f"์๋
ํ์ธ์, ์ ๋ {self.name}์
๋๋ค.")
p = Person("๊น์ํฌ")
p.greet()
๐ฆ ์ฃผ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์๊ฐ
๋ผ์ด๋ธ๋ฌ๋ฆฌ |
์ฉ๋ |
requests |
HTTP ์์ฒญ (API ํต์ ๋ฑ) |
pandas |
ํ ํํ์ ๋ฐ์ดํฐ ๋ถ์ ๋ฐ ์ฒ๋ฆฌ |
numpy |
์์น ํด์ ๋ฐ ๊ณ ์ ๋ฐฐ์ด ๊ณ์ฐ |
matplotlib, seaborn |
๋ฐ์ดํฐ ์๊ฐํ |
selenium |
์น ๋ธ๋ผ์ฐ์ ์๋ํ |
openpyxl |
Excel ํ์ผ ์ฝ๊ณ ์ฐ๊ธฐ |
flask, fastapi |
์น ์๋ฒ ๊ตฌ์ถ ๋ฐ API ์ ๊ณต |
openai, transformers |
GPT, BERT ๋ฑ LLM ์ฐ๋ |
๐ ๊ฐ๋ฐ ํ๊ฒฝ
ํญ๋ชฉ์ถ์ฒ ๋๊ตฌ
ํญ๋ชฉ์ถ์ฒ |
๋๊ตฌ |
ํธ์ง๊ธฐ |
VS Code, PyCharm, Jupyter Notebook |
ํจํค์ง ๊ด๋ฆฌ |
pip, poetry, conda |
๊ฐ์ํ๊ฒฝ |
venv, virtualenv |
๋ฒ์ ๊ด๋ฆฌ |
pyenv, asdf |
ํ์ ๊ฒ์ฌ |
black, flake8, mypy |
โ๏ธ ์ฅ์ ๊ณผ ๋จ์
์ฅ์ |
๋จ์ |
๋ฐฐ์ฐ๊ธฐ ์ฝ๊ณ ์์ฐ์ฑ์ด ๋์ |
์คํ ์๋๋ ๋ค์ ๋๋ฆผ (์ธํฐํ๋ฆฌํฐ ๊ธฐ๋ฐ) |
์คํ์์ค ์ํ๊ณ๊ฐ ํ๋ถํจ |
๋ฉํฐ์ค๋ ๋ ๋ณ๋ ฌ ์ฒ๋ฆฌ์ ์ ์ฝ (GIL) |
๋ค์ํ ๋ถ์ผ์ ์ ์ฉ ๊ฐ๋ฅ |
๋ชจ๋ฐ์ผ ์ฑ ๊ฐ๋ฐ์๋ ๋ถ์ ํฉ |
๐ฏ ์ค๋ฌด์์์ ํ์ด์ฌ
- ๋ฐฑ์๋ ์๋น์ค API๋ฅผ ๋น ๋ฅด๊ฒ ๊ตฌ์ถํ ์ ์์ผ๋ฉฐ, FastAPI๋ ๋น๋๊ธฐ ์ฒ๋ฆฌ์๋ ๊ฐ๋ ฅํฉ๋๋ค.
- ๋ฐ์ดํฐ ๊ธฐ๋ฐ์ ์์ฌ๊ฒฐ์ ๋๊ตฌ๋ก, Pandas์ ํจ๊ป ์๊ฐํ๊น์ง ์ฐ๊ฒฐํ๋ฉด ๋ฆฌํฌํธ ์๋ํ์ ์ ์ฉํฉ๋๋ค.
- ์
๋ฌด ์๋ํ, ์์คํ
๋ชจ๋ํฐ๋ง ์คํฌ๋ฆฝํธ๋ ์งง์ ์ฝ๋๋ก ๊ตฌํํ ์ ์์ด DevOps์์๋ ๋ง์ด ํ์ฉ๋ฉ๋๋ค.