1๋ณ์ & ๋ฐ์ดํฐ ํ์
x = 5 # int
name = "Python" # str
pi = 3.14 # float
is_ok = True # bool
nothing = None # NoneType
a, b = 1, 2 # ๋ค์คํ ๋น
| ํ์
| ์์ | ๋ณํ |
| int | 5, -3 | int("5") |
| float | 3.14 | float("3.14") |
| str | "hello" | str(42) |
| bool | True | bool(1) |
type(x) isinstance(x, int)
2์ฐ์ฐ์
| ์ฐ์ | ๊ธฐํธ | ์์ |
| ๋ง์
/๋บ์
| + - | 10+3โ13 |
| ๊ณฑ์
/๋๋์
| * / | 10/3โ3.33 |
| ๋ชซ/๋๋จธ์ง | // % | 10//3โ3 |
| ๊ฑฐ๋ญ์ ๊ณฑ | ** | 2**3โ8 |
| ๋น๊ต | ๋
ผ๋ฆฌ | ๋ฉค๋ฒ์ญ |
| == != < > | and | in |
| <= >= | or, not | not in |
| is, is not | | |
โ ๏ธ and/or/not ์ฌ์ฉ (&&, ||, ! ์๋)
3๋ฌธ์์ด (str)
s = "Hello, World!"
s[0] # 'H' ์ธ๋ฑ์ฑ
s[-1] # '!' ๋ค์์
s[0:5] # 'Hello' ์ฌ๋ผ์ด์ฑ
s[::-1] # ๋ค์ง๊ธฐ
f"๊ฐ: {name}, {3.14:.1f}" # f-string
| ๋ฉ์๋ | ์ค๋ช
|
| .upper() .lower() | ๋/์๋ฌธ์ |
| .strip() | ๊ณต๋ฐฑ ์ ๊ฑฐ |
| .split(sep) | ๋ถํ โ๋ฆฌ์คํธ |
| sep.join(list) | ๋ฆฌ์คํธโ๋ฌธ์์ด |
| .replace(a,b) | ์นํ |
| .find() .count() | ๊ฒ์ / ๊ฐ์ |
4๋ฆฌ์คํธ (list) โ ๊ฐ๋ณ ์ํ์ค
lst = [1, 2, 3, 4, 5]
lst[0] # 1 (์ฒซ๋ฒ์งธ)
lst[-1] # 5 (๋ง์ง๋ง)
lst[1:3] # [2,3] ์ฌ๋ผ์ด์ฑ
| ๋ฉ์๋ | ์ค๋ช
|
| .append(x) | ๋์ ์ถ๊ฐ |
| .insert(i,x) | ์์น ์ฝ์
|
| .extend(lst2) | ๋ฆฌ์คํธ ํ์ฅ |
| .pop(i) .remove(x) | ์ญ์ |
| .sort() .reverse() | ์ ๋ ฌ/๋ค์ง๊ธฐ |
| .index(x) .count(x) | ๊ฒ์/๊ฐ์ |
# ์ปดํ๋ฆฌํจ์
[x**2 for x in range(10) if x%2==0]
5ํํ & ์ธํธ
# ํํ (๋ถ๋ณ)
t = (1, 2, 3)
a, b, c = t # ์ธํจํน
first, *rest = t # ํ์ฅ ์ธํจํน
# ์ธํธ (์ค๋ณต ์์)
s = {1, 2, 3}
s.add(4); s.remove(1)
| ์ธํธ ์ฐ์ฐ | ๊ธฐํธ |
| ํฉ์งํฉ/๊ต์งํฉ | a | b / a & b |
| ์ฐจ์งํฉ/๋์นญ์ฐจ | a - b / a ^ b |
6๋์
๋๋ฆฌ (dict)
d = {"name":"Kim", "age":30}
d["name"] # 'Kim'
d.get("job","N/A") # ๊ธฐ๋ณธ๊ฐ
d["email"] = "a@b" # ์ถ๊ฐ
del d["age"] # ์ญ์
| ๋ฉ์๋ | ์ค๋ช
|
| .keys() .values() | ํค / ๊ฐ |
| .items() | (ํค,๊ฐ) ์ |
| .update(d2) .pop(k) | ๋ณํฉ / ๊บผ๋ด๊ธฐ |
{k:v**2 for k,v in d.items()} # ์ปดํ
7์กฐ๊ฑด๋ฌธ & ๋ฐ๋ณต๋ฌธ
if x > 0: print("์์")
elif x==0: print("์")
else: print("์์")
# ์ผํญ
r = "์ง" if x%2==0 else "ํ"
# for
for i in range(5): # 0~4
for i,v in enumerate(lst):
for a,b in zip(x, y):
# while
while x > 0: x -= 1
# break continue pass
8ํจ์
def greet(name, msg="Hi"):
"""docstring"""
return f"{msg}, {name}!"
# ๊ฐ๋ณ์ธ์
def f(*args, **kwargs): pass
# lambda
sq = lambda x: x**2
# ๋ค์ค ๋ฐํ
def mm(l): return min(l),max(l)
lo, hi = mm([3,1,2])
9์์ธ ์ฒ๋ฆฌ
try:
result = 10 / 0
except ZeroDivisionError as e:
print(e)
except (TypeError, ValueError):
print("์๋ฌ")
else: # ์ฑ๊ณต ์
print("OK")
finally: # ํญ์
print("๋")
raise ValueError("์๋ชป๋ ๊ฐ")
10ํ์ผ I/O
with open("f.txt","r",
encoding="utf-8") as f:
text = f.read()
lines = f.readlines()
with open("f.txt","w") as f:
f.write("Hello\n")
with open("f.txt","a") as f:
f.write("์ถ๊ฐ\n")
11์ฃผ์ ๋ด์ฅ ํจ์
| ํจ์ | ์ค๋ช
|
| len() range() | ๊ธธ์ด / ์ ์์ํ์ค |
| enumerate() zip() | ์ธ๋ฑ์ค์ / ๋ณ๋ ฌ |
| map() filter() | ๋งคํ / ํํฐ๋ง |
| sorted() reversed() | ์ ๋ ฌ / ์ญ์ |
| sum() min() max() | ํฉ/์ต์/์ต๋ |
| abs() round(x,n) | ์ ๋๊ฐ/๋ฐ์ฌ๋ฆผ |
| print() input() | ์ถ๋ ฅ/์
๋ ฅ |
| type() isinstance() | ํ์
ํ์ธ |
12๋ชจ๋ & ํด๋์ค
import math
from math import sqrt, pi
import numpy as np
class Dog:
def __init__(self, name):
self.name = name
def bark(self):
return f"{self.name}: ๋ฉ!"
# ์์
class Puppy(Dog):
def bark(self):
return f"{self.name}: ๋!"