ํฐ์คํ ๋ฆฌ ๋ทฐ
๐ฑ ํ๋ ์ธ๊ณต์ง๋ฅ ํ์ต 1๋จ๊ณ: ๊ธฐ์ด ํ๋ก๊ทธ๋๋ฐ (Python)
octo54 2025. 5. 8. 10:28๐ฑ ํ๋ ์ธ๊ณต์ง๋ฅ ํ์ต 1๋จ๊ณ: ๊ธฐ์ด ํ๋ก๊ทธ๋๋ฐ (Python)
๐ ํ์ต ๊ธฐ๊ฐ: 1~3๊ฐ์
๐ฏ ํ์ต ๋ชฉํ: Python ๊ธฐ๋ณธ ๋ฌธ๋ฒ๊ณผ ์๋ฃ ๊ตฌ์กฐ ์ดํด
๐ 1. Python ๊ธฐ๋ณธ ๊ฐ๋ ์ ๋ฆฌ
์ธ๊ณต์ง๋ฅ(AI)์ ๊ณต๋ถํ๊ธฐ ์ํด ๊ฐ์ฅ ๋จผ์ ์ตํ์ผ ํ ์ธ์ด๋ Python์
๋๋ค.
Python์ ๊ฐ๊ฒฐํ ๋ฌธ๋ฒ๊ณผ ๊ฐ๋ ฅํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ํ๊ณ๋ก ์ธํด AI์ ๋ฐ์ดํฐ ๋ถ์ ๋ถ์ผ์์ ๋๋ฆฌ ์ฌ์ฉ๋ฉ๋๋ค.
๐ 1-1. Python ๊ธฐ๋ณธ ๋ฌธ๋ฒ
๐ 1) ๋ณ์์ ๋ฐ์ดํฐ ํ์
๋ณ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๊ณต๊ฐ์ ๋๋ค. Python์์๋ ๋ณ์ ํ์ ์ ๋ช ์ํ์ง ์๊ณ ๋ ์์ ๋กญ๊ฒ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์์ ์ฝ๋:
# ๋ณ์ ์ ์ธ๊ณผ ๋ฐ์ดํฐ ํ์
name = "Alice" # ๋ฌธ์์ด
age = 25 # ์ ์
height = 1.68 # ์ค์
is_student = True # ๋ถ๋ฆฌ์ธ
# ํ์
ํ์ธ
print(type(name)) # <class 'str'>
print(type(age)) # <class 'int'>
print(type(height)) # <class 'float'>
print(type(is_student)) # <class 'bool'>
๐ก ์ฃผ์์ฌํญ:
- Python์ ๋์ ํ์ ์ธ์ด์ ๋๋ค. ๋ณ์์ ์ด๋ค ๊ฐ์ด ๋ค์ด๊ฐ๋์ง์ ๋ฐ๋ผ ํ์ ์ด ๊ฒฐ์ ๋ฉ๋๋ค.
- ๋ณ์๋ช ์ ์ง์ ๋ ๊ฐ๋ ์ฑ์ ๊ณ ๋ คํ๊ณ ์๋ฏธ๋ฅผ ๋ด์์ผ ํฉ๋๋ค.
๐ 2) ์กฐ๊ฑด๋ฌธ๊ณผ ๋ฐ๋ณต๋ฌธ
์กฐ๊ฑด๋ฌธ๊ณผ ๋ฐ๋ณต๋ฌธ์ ์ฝ๋์ ํ๋ฆ์ ์ ์ดํฉ๋๋ค.
- ์กฐ๊ฑด๋ฌธ: if, elif, else
- ๋ฐ๋ณต๋ฌธ: for, while
์์ ์ฝ๋:
# ์กฐ๊ฑด๋ฌธ
score = 85
if score >= 90:
print("A ํ์ ")
elif score >= 80:
print("B ํ์ ")
else:
print("C ํ์ ")
# ๋ฐ๋ณต๋ฌธ (for)
for i in range(1, 6):
print(f"์ซ์ {i}")
# ๋ฐ๋ณต๋ฌธ (while)
count = 5
while count > 0:
print(f"์นด์ดํธ๋ค์ด: {count}")
count -= 1
๐ก ํ:
- if, elif, else ๋ค์๋ ๋ฐ๋์ ์ฝ๋ก (:)์ ๋ถ์ ๋๋ค.
- ๋ฐ๋ณต๋ฌธ์ ํน์ ์กฐ๊ฑด์์ ์ข ๋ฃํ์ง ์์ผ๋ฉด ๋ฌดํ๋ฃจํ์ ๋น ์ง ์ ์์ผ๋ฏ๋ก ์ฃผ์ํฉ๋๋ค.
๐ 3) ํจ์ ์ ์์ ํธ์ถ
ํจ์๋ ์ฝ๋๋ฅผ ๋ชจ๋ํํ์ฌ ์ฌ์ฌ์ฉ์ฑ์ ๋์ด๋ ๋ฐ ์ ์ฉํฉ๋๋ค.
ํจ์ ์ ์:
def greet(name):
return f"์๋
ํ์ธ์, {name}๋!"
print(greet("ํ๊ธธ๋"))
๐ก ํจ์ ์์ฑ ์ ์ ์์ฌํญ:
- ํจ์ ์ด๋ฆ์ ๋์ฌ ํํ๋ก ์ง๊ด์ ์ผ๋ก ์์ฑํฉ๋๋ค.
- ์ธ์๋ ๋ช ์์ ์ผ๋ก ์ ์ํ์ฌ ํจ์ ์ฌ์ฉ์ฑ์ ๋์ ๋๋ค.
- ํ์ ์ ๊ธฐ๋ณธ๊ฐ์ ์ง์ ํ ์ ์์ต๋๋ค.
๐ 4) ํด๋์ค์ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ
๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ(OOP)์ ์ฝ๋์ ์ฌ์ฌ์ฉ์ฑ๊ณผ ๊ตฌ์กฐํ์ ์ ๋ฆฌํฉ๋๋ค.
ํด๋์ค ์์:
class Car:
def __init__(self, brand, model):
self.brand = brand
self.model = model
def start(self):
print(f"{self.brand} {self.model} ์๋์ ๊ฒ๋๋ค.")
# ๊ฐ์ฒด ์์ฑ
my_car = Car("Hyundai", "Sonata")
my_car.start()
๐ก ๊ฐ์ฒด์งํฅ ์ค๊ณ ํ:
- ํด๋์ค๋ช ์ ๋๋ฌธ์๋ก ์์ํฉ๋๋ค.
- __init__ ๋ฉ์๋๋ ๊ฐ์ฒด๊ฐ ์์ฑ๋ ๋ ์๋์ผ๋ก ํธ์ถ๋๋ ์ด๊ธฐํ ๋ฉ์๋์ ๋๋ค.
- ๋ฉ์๋๋ช ์ ๋์์ ๋ช ์ํ๋ ํํ๋ก ์์ฑํฉ๋๋ค.
๐ 5) ํ์ผ ์ ์ถ๋ ฅ
ํ์ผ ์ ์ถ๋ ฅ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ฑฐ๋ ๋ถ๋ฌ์ค๋ ๋ฐ ํ์์ ์ ๋๋ค.
ํ์ผ ์ฝ๊ธฐ:
with open("data.txt", "r") as file:
content = file.read()
print(content)
ํ์ผ ์ฐ๊ธฐ:
with open("output.txt", "w") as file:
file.write("Python ํ์ผ ์
์ถ๋ ฅ ์์ ")
๐ก ์ ์์ฌํญ:
- with ๊ตฌ๋ฌธ์ ์ฌ์ฉํ๋ฉด ํ์ผ์ ์๋์ผ๋ก ๋ซ์์ค๋๋ค.
- ํ์ผ ๋ชจ๋๋ r(์ฝ๊ธฐ), w(์ฐ๊ธฐ), a(์ถ๊ฐ ์ฐ๊ธฐ) ๋ฑ์ด ์์ต๋๋ค.
๐ 6) ์์ธ ์ฒ๋ฆฌ
ํ๋ก๊ทธ๋จ์ด ์ค๋ฅ๋ก ์ค๋จ๋์ง ์๋๋ก ์์ธ๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.
์์ธ ์ฒ๋ฆฌ ๊ธฐ๋ณธ ๊ตฌ์กฐ:
try:
num = int(input("์ซ์๋ฅผ ์
๋ ฅํ์ธ์: "))
result = 10 / num
print(f"๊ฒฐ๊ณผ: {result}")
except ZeroDivisionError:
print("0์ผ๋ก ๋๋ ์ ์์ต๋๋ค.")
except ValueError:
print("์ซ์๊ฐ ์๋๋๋ค.")
finally:
print("ํ๋ก๊ทธ๋จ ์ข
๋ฃ")
๐ก ์์ธ ์ฒ๋ฆฌ ์๋ น:
- ์ฌ๋ฌ ์์ธ๋ฅผ ์ฒ๋ฆฌํ ๋๋ ๊ฐ์ฅ ๊ตฌ์ฒด์ ์ธ ์์ธ๋ถํฐ ์ฒ๋ฆฌํฉ๋๋ค.
- finally ๋ธ๋ก์ ์์ธ ๋ฐ์ ์ฌ๋ถ์ ๊ด๊ณ์์ด ํญ์ ์คํ๋ฉ๋๋ค.
๐ป ์ค์ต ํ๋ก์ ํธ: ํ์ ์ฑ์ ๊ด๋ฆฌ ํ๋ก๊ทธ๋จ
๊ธฐ๋ฅ:
- ํ์ ์ฑ์ ์ถ๊ฐ
- ์ฑ์ ์กฐํ
- ์ฑ์ ์์
- ์ฑ์ ์ญ์
์ฝ๋:
students = {}
def add_student(name, score):
students[name] = score
def view_students():
for name, score in students.items():
print(f"ํ์: {name}, ์ฑ์ : {score}")
def update_student(name, score):
if name in students:
students[name] = score
print(f"{name}์ ์ฑ์ ์ด ์์ ๋์์ต๋๋ค.")
else:
print(f"{name} ํ์์ด ์กด์ฌํ์ง ์์ต๋๋ค.")
def delete_student(name):
if name in students:
del students[name]
print(f"{name}์ ์ฑ์ ์ด ์ญ์ ๋์์ต๋๋ค.")
else:
print(f"{name} ํ์์ด ์กด์ฌํ์ง ์์ต๋๋ค.")
# ํ
์คํธ
add_student("ํ๊ธธ๋", 85)
add_student("์ด์์ ", 92)
view_students()
update_student("ํ๊ธธ๋", 90)
delete_student("์ด์์ ")
view_students()
๐ ํ์ต ๊ฟํ:
- ๋งค์ผ ๊พธ์คํ ์ฝ๋ฉํ๊ธฐ:
- ๊ธฐ๋ณธ ๋ฌธ๋ฒ์ ๋ฐ๋ณต ํ์ตํ์ฌ ์์ฐ์ค๋ฝ๊ฒ ์ฌ์ฉํ ์ ์๋๋ก ์ฐ์ต
- ์คํ์์ค ํ๋ก์ ํธ ์ฐธ์ฌ:
- GitHub์์ ์ด๊ธ ํ๋ก์ ํธ๋ฅผ ์ฐพ์ ์ฝ๋ ๋ฆฌ๋ทฐ์ ์ฐธ์ฌ
- ์ฝ๋ฉ ๋ฌธ์ ํ์ด:
- ํ๋ก๊ทธ๋๋จธ์ค, ๋ฐฑ์ค, LeetCode ๋ฌธ์ ๋ฅผ ํตํด ์๊ณ ๋ฆฌ์ฆ ์ฐ์ต
๐ ํ์ต ์ฒดํฌ๋ฆฌ์คํธ:
- ๋ณ์์ ๋ฐ์ดํฐ ํ์ ์ ์์ ๋กญ๊ฒ ์ฌ์ฉํ ์ ์๋ค.
- ์กฐ๊ฑด๋ฌธ๊ณผ ๋ฐ๋ณต๋ฌธ์ ํ์ฉํ์ฌ ๋ค์ํ ํ๋ฆ ์ ์ด๊ฐ ๊ฐ๋ฅํ๋ค.
- ํจ์์ ํด๋์ค๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ํ๋ ์ฝ๋๋ฅผ ์์ฑํ ์ ์๋ค.
- ํ์ผ ์ ์ถ๋ ฅ๊ณผ ์์ธ ์ฒ๋ฆฌ์ ๊ธฐ๋ณธ ๊ฐ๋ ์ ์ดํดํ๋ค.
Python, ๊ธฐ์ด ํ๋ก๊ทธ๋๋ฐ, ์กฐ๊ฑด๋ฌธ, ๋ฐ๋ณต๋ฌธ, ํด๋์ค, ํ์ผ ์ ์ถ๋ ฅ, ์์ธ ์ฒ๋ฆฌ, ์ธ๊ณต์ง๋ฅ ๊ธฐ์ด, ๊ธฐ์ด ํ๋ก์ ํธ
'Programming > Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐ JAX์ ํต์ฌ ๊ธฐ๋ฅ - ์๋ ๋ฏธ๋ถ๊ณผ JIT ์ปดํ์ผ๋ก ์ฑ๋ฅ ๊ทน๋ํ (0) | 2025.05.08 |
---|---|
๐ฑ ํ๋ ์ธ๊ณต์ง๋ฅ ํ์ต 1๋จ๊ณ: ๊ธฐ์ด ์ํ ๋ฐ ์ ํ๋์ (0) | 2025.05.08 |
๐ JAX ๊ธฐ์ด - ์ JAX๋ฅผ ๋ฐฐ์์ผ ํ ๊น? (0) | 2025.05.07 |
[Python] Ubuntu 20.04์ python 3.10 ์ค์น (0) | 2024.03.11 |
[Python] Tensoflow F1 score metrics (0) | 2022.09.22 |
- Total
- Today
- Yesterday
- seo ์ต์ ํ 10๊ฐ
- llm
- rag
- kotlin
- Docker
- ๊ด๋ฆฌ์
- LangChain
- CI/CD
- NestJS
- Python
- ๊ฐ๋ฐ๋ธ๋ก๊ทธ
- AI์ฑ๋ด
- nextJS
- gatsbyjs
- ํ๋ก ํธ์๋
- App Router
- fastapi
- Prisma
- Ktor
- Webpack
- github
- Next.js
- ํ๋ก ํธ์๋๋ฉด์
- SEO์ต์ ํ
- ๋ฐฑ์๋๊ฐ๋ฐ
- ์น๊ฐ๋ฐ
- REACT
- SEO ์ต์ ํ
- PostgreSQL
- nodejs
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |