Created at : 2024-09-03 09:14
Auther: Soo.Y
1. κΈ°μ΄ λ³΅μ΅
νμ΄μ¬ μ¬ν κ°μμ μμ, κΈ°μ΄ λ³΅μ΅μ ν΅ν΄ νμ΄μ¬μ κΈ°λ³Έ κ°λ λ€μ λ€μ ν λ² νμΈνκ³ , μ¬ν μ£Όμ λ₯Ό νμ΅νκΈ° μν κΈ°μ΄λ₯Ό λ€μ§κ² μ΅λλ€. μ΄ μ₯μμλ νμ΄μ¬μ κΈ°λ³Έ λ¬Έλ², λ°μ΄ν° νμ κ³Ό μλ£κ΅¬μ‘°, ν¨μμ λͺ¨λμ λ€λ£Ήλλ€. μ΄λ₯Ό ν΅ν΄ μμΌλ‘ λ€λ£° μ¬ν μ£Όμ λ€μ λ μ½κ² μ΄ν΄ν μ μλλ‘ ν©λλ€.
1.1 νμ΄μ¬μ κΈ°λ³Έ λ¬Έλ² λ³΅μ΅
νμ΄μ¬μ κΈ°λ³Έ λ¬Έλ²μ μ΄ν΄νκ³ μμ΄μΌ μ¬νλ μ£Όμ λ₯Ό νμ΅ν λ νΌλμ κ²ͺμ§ μμ΅λλ€. μ¬κΈ°μλ λ³μ, μ°μ°μ, μ μ΄λ¬Έ, λ°λ³΅λ¬Έ λ±μ 볡μ΅ν©λλ€.
1.1.1 λ³μμ λ°μ΄ν° νμ
- λ³μ: νμ΄μ¬μμ λ³μλ κ°μ μ μ₯νλ 곡κ°μ λλ€. νμ΄μ¬μ λμ νμ μΈμ΄μ΄κΈ° λλ¬Έμ λ³μμ ν λΉλλ κ°μ νμ μ λͺ μμ μΌλ‘ μ μΈν νμκ° μμ΅λλ€.
a = 10 # μ μν
b = 3.14 # μ€μν
c = "Hello" # λ¬Έμμ΄
d = True # λΆλ¦¬μΈ
- λ°μ΄ν° νμ
:
- μ μ (int): μ μ κ°μ λνλ λλ€.
- μ€μ (float): μμμ μ ν¬ν¨νλ μμ λλ€.
- λ¬Έμμ΄ (str): λ¬Έμμ΄μ λνλ΄λ©°, ν°λ°μ΄νλ μμλ°μ΄νλ‘ λ¬Άμ΅λλ€.
- λΆλ¦¬μΈ (bool):
True
λλFalse
κ°μ κ°μ§λλ€.
1.1.2 μ°μ°μ
νμ΄μ¬μμ μ¬μ©λλ μ£Όμ μ°μ°μλ₯Ό 볡μ΅ν©λλ€.
- μ°μ μ°μ°μ:
+
: λ§μ -
: λΊμ *
: κ³±μ /
: λλμ //
: λλμ μ λͺ«%
: λλ¨Έμ§**
: κ±°λμ κ³±
x = 10
y = 3
print(x + y) # μΆλ ₯: 13
print(x / y) # μΆλ ₯: 3.3333...
print(x // y) # μΆλ ₯: 3
print(x % y) # μΆλ ₯: 1
- λΉκ΅ μ°μ°μ:
==
: λ κ°μ΄ κ°μμ§ λΉκ΅!=
: λ κ°μ΄ λ€λ₯Έμ§ λΉκ΅<
,<=
: μκ±°λ κ°μμ§ λΉκ΅>
,>=
: ν¬κ±°λ κ°μμ§ λΉκ΅
print(10 == 10) # μΆλ ₯: True
print(10 != 5) # μΆλ ₯: True
print(10 > 5) # μΆλ ₯: True
- λ
Όλ¦¬ μ°μ°μ:
and
: λ μ‘°κ±΄μ΄ λͺ¨λ μ°Έμ΄λ©΄ μ°Έor
: λ 쑰건 μ€ νλλΌλ μ°Έμ΄λ©΄ μ°Έnot
: 쑰건μ λ°λ κ°
print(True and False) # μΆλ ₯: False
print(True or False) # μΆλ ₯: True
print(not True) # μΆλ ₯: False
1.1.3 μ μ΄λ¬Έ
- 쑰건문
if
,elif
,else
λ₯Ό μ¬μ©νμ¬ μ‘°κ±΄μ λ°λΌ λ€λ₯Έ μ½λ λΈλ‘μ μ€νν μ μμ΅λλ€.
age = 20
if age >= 18:
print("μ±μΈμ
λλ€.")
elif age >= 13:
print("μ²μλ
μ
λλ€.")
else:
print("μ΄λ¦°μ΄μ
λλ€.")
- λ°λ³΅λ¬Έ
for
루ν: μνμ€(리μ€νΈ, νν, λ¬Έμμ΄ λ±)λ₯Ό μνν©λλ€.while
루ν: μ‘°κ±΄μ΄ μ°ΈμΈ λμ μ½λλ₯Ό λ°λ³΅ν©λλ€.
for i in range(5):
print(i) # 0λΆν° 4κΉμ§ μΆλ ₯
count = 0
while count < 5:
print(count)
count += 1
- 리μ€νΈ μ»΄ν리ν¨μ
- 리μ€νΈ μ»΄ν리ν¨μ μ ν΅ν΄ κ°κ²°νκ² λ¦¬μ€νΈλ₯Ό μμ±ν μ μμ΅λλ€.
squares = [x ** 2 for x in range(10)]
print(squares) # μΆλ ₯: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
1.2 λ°μ΄ν° νμ κ³Ό μλ£κ΅¬μ‘°
νμ΄μ¬μ κΈ°λ³Έ λ°μ΄ν° νμ κ³Ό μλ£κ΅¬μ‘°λ₯Ό 볡μ΅ν©λλ€. μ΄λ€μ μ΄ν΄νκ³ νμ©ν μ μμ΄μΌ λ°μ΄ν° μ²λ¦¬μ μκ³ λ¦¬μ¦ κ΅¬νμ΄ μνν΄μ§λλ€.
1.2.1 κΈ°λ³Έ λ°μ΄ν° νμ
- μ«μν (int, float): μνμ μ°μ°μ μνν μ μμ΅λλ€.
- λ¬Έμμ΄ (str): ν μ€νΈ λ°μ΄ν°λ₯Ό μ²λ¦¬ν μ μμ΅λλ€.
- λΆλ¦¬μΈ (bool): μ°Έ(True)κ³Ό κ±°μ§(False)μ λνλ λλ€.
1.2.2 리μ€νΈ (List)
- 리μ€νΈλ νμ΄μ¬μμ κ°μ₯ λ§μ΄ μ¬μ©λλ μλ£κ΅¬μ‘°λ‘, μ¬λ¬ κ°μ κ°μ μμ°¨μ μΌλ‘ μ μ₯ν©λλ€.
fruits = ["apple", "banana", "cherry"]
print(fruits[0]) # μΆλ ₯: apple
fruits.append("orange") # 리μ€νΈμ νλͺ© μΆκ°
- 리μ€νΈμ μ£Όμ λ©μλ
append()
: 리μ€νΈμ νλͺ©μ μΆκ°ν©λλ€.remove()
: 리μ€νΈμμ νλͺ©μ μ κ±°ν©λλ€.sort()
: 리μ€νΈλ₯Ό μ λ ¬ν©λλ€.
1.2.3 νν (Tuple)
- ννμ 리μ€νΈμ μ μ¬νμ§λ§, λΆλ³(immutable)μ λλ€. μ¦, ν λ² μμ±λλ©΄ μμ ν μ μμ΅λλ€.
point = (1, 2)
print(point[0]) # μΆλ ₯: 1
1.2.4 λμ λ리 (Dictionary)
- λμ λ리λ ν€-κ° μμΌλ‘ λ°μ΄ν°λ₯Ό μ μ₯νλ μλ£κ΅¬μ‘°μ λλ€. λΉ λ₯΄κ² κ°μ κ²μν μ μμ΅λλ€.
person = {"name": "Alice", "age": 25}
print(person["name"]) # μΆλ ₯: Alice
person["age"] = 26 # κ° λ³κ²½
- λμ
λ리μ μ£Όμ λ©μλ
keys()
: λμ λ리μ λͺ¨λ ν€λ₯Ό λ°νν©λλ€.values()
: λμ λ리μ λͺ¨λ κ°μ λ°νν©λλ€.items()
: λμ λ리μ ν€-κ° μμ λ°νν©λλ€.
1.2.5 μΈνΈ (Set)
- μΈνΈλ μ€λ³΅λμ§ μλ νλͺ©μ λͺ¨μμ λνλ΄λ©°, μνμμμ μ§ν© κ°λ κ³Ό μ μ¬ν©λλ€.
unique_numbers = {1, 2, 3, 4, 4, 5}
print(unique_numbers) # μΆλ ₯: {1, 2, 3, 4, 5}
- μΈνΈμ μ£Όμ λ©μλ
add()
: μΈνΈμ νλͺ©μ μΆκ°ν©λλ€.remove()
: μΈνΈμμ νλͺ©μ μ κ±°ν©λλ€.union()
,intersection()
,difference()
: μΈνΈ μ°μ°μ μνν©λλ€.
1.3 ν¨μμ λͺ¨λ
ν¨μμ λͺ¨λμ 볡μ΅νμ¬, νμ΄μ¬ μ½λμ μ¬μ¬μ©μ±κ³Ό κ°λ μ±μ λμ΄λ λ°©λ²μ λ€μ ν λ² μ΅νλλ€.
1.3.1 ν¨μμ μ μμ νΈμΆ
- ν¨μ μ μ: ν¨μλ
def
ν€μλλ₯Ό μ¬μ©νμ¬ μ μλ©λλ€. ν¨μλ₯Ό μ¬μ©νλ©΄ λ°λ³΅λλ μ½λλ₯Ό μ¬μ¬μ©ν μ μμ΅λλ€.
def greet(name):
return f"μλ
νμΈμ, {name}λ!"
print(greet("νκΈΈλ")) # μΆλ ₯: μλ
νμΈμ, νκΈΈλλ!
- λ§€κ°λ³μμ μΈμ
- λ§€κ°λ³μ: ν¨μ μ μ μ μ¬μ©λλ λ³μ.
- μΈμ: ν¨μ νΈμΆ μ μ λ¬λλ μ€μ κ°.
def add(a, b):
return a + b
print(add(5, 3)) # μΆλ ₯: 8
- κΈ°λ³Έκ° λ§€κ°λ³μ: ν¨μ μ μ μ κΈ°λ³Έκ°μ μ€μ ν μ μμ΅λλ€.
def greet(name="μ΄λ¦ μμ"):
return f"μλ
νμΈμ, {name}λ!"
print(greet()) # μΆλ ₯: μλ
νμΈμ, μ΄λ¦ μμλ!
1.3.2 λλ€ ν¨μ
- λλ€ ν¨μλ μ΅λͺ ν¨μλ‘, κ°λ¨ν μ°μ°μ΄λ ν μ€μ§λ¦¬ ν¨μλ₯Ό μ μν λ μ μ©ν©λλ€.
square = lambda x: x ** 2
print(square(5)) # μΆλ ₯: 25
1.3.3 λͺ¨λκ³Ό ν¨ν€μ§
-
λͺ¨λμ νμ΄μ¬ νμΌλ‘, ν¨μμ λ³μλ₯Ό μ μνκ³ λ€λ₯Έ νμΌμμ μ¬μ©ν μ μλλ‘ ν©λλ€.
-
ν¨ν€μ§λ μ¬λ¬ λͺ¨λμ λ¬Άμ΄ κ΄λ¦¬νλ λλ ν 리μ λλ€.
-
λͺ¨λμ μ¬μ©
# my_module.py
def add(a, b):
return a + b
# main.py
import my_module
print(my_module.add(3, 4)) # μΆλ ₯: 7
-
ν¨ν€μ§μ μ¬μ©
ν¨ν€μ§λ λλ ν 리 κ΅¬μ‘°λ‘ μ΄λ£¨μ΄μ Έ μμΌλ©°, μ¬λ¬ λͺ¨λμ ν¬ν¨ν μ μμ΅λλ€.
my_package/
__init__.py
module1.py
module2.py
__init__.py
νμΌμ ν¨ν€μ§μ μ΄κΈ°ν μ½λκ° ν¬ν¨λ μ μμΌλ©°, ν¨ν€μ§λ₯Ό λͺ¨λλ‘ μΈμνλλ‘ ν©λλ€.
1.3.4 κ°μ νκ²½
- κ°μ νκ²½μ νμ΄μ¬ νλ‘μ νΈλ§λ€ λ 립λ ν¨ν€μ§ μ€μΉ 곡κ°μ μ 곡νμ¬, νλ‘μ νΈ κ°μ μ’ μμ± μΆ©λμ λ°©μ§ν©λλ€.
python -m venv myenv
source myenv/bin/activate # κ°μ νκ²½ νμ±ν (Windowsμμλ `myenv\Scripts\activate`)
κ°μ νκ²½μ΄ νμ±νλλ©΄, ν΄λΉ νκ²½μ λ 립λ ν¨ν€μ§λ₯Ό μ€μΉνκ³ μ¬μ©ν μ μμ΅λλ€.
μμ½
μ΄ μ₯μμλ νμ΄μ¬μ κΈ°λ³Έ λ¬Έλ², λ°μ΄ν° νμ κ³Ό μλ£κ΅¬μ‘°, ν¨μμ λͺ¨λμ λν΄ λ³΅μ΅νμ΅λλ€. μ΄λ¬ν κΈ°μ΄ κ°λ λ€μ μ΄ν λ€λ£° μ¬ν μ£Όμ λ€μ μ΄ν΄νλ λ° νμμ μ λλ€. κΈ°μ΄ κ°λ μ΄ ννν΄μΌ 볡μ‘ν λ¬Έμ λ₯Ό ν΄κ²°ν μ μμΌλ―λ‘, μ΄ λΆλΆμ νμ€ν μ΄ν΄νκ³ λμ΄κ°λ κ²μ΄ μ€μν©λλ€. λ€μ μ₯λΆν°λ κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°κ³Ό κ°μ μ¬ν μ£Όμ λ₯Ό λ€λ£¨λ©° νμ΄μ¬μ κ³ κΈ κΈ°λ₯μ μ΅ν λκ°κ² μ΅λλ€.