from dataclasses import dataclass
@dataclass
class Student:
name : str
age : int
major : str
student1 = Student("샘", 30, "OpenAI")
student1
@dataclass
class Student:
name : str
age : int
major : str
def __post_init__(self):
if not isinstance(self.age, int):
raise TypeError(f"나이는 숫자로 들어와야함")
student1 = Student("샘", "서른살", "OpenAI")
student2 = Student("민수",20,"우아한형제들")
student3 = Student("태연",25,"카카오")
student2 == student3
class Student_1:
def __init__(self,name,age,major):
self.name = name
self.age = age
self.major = major
student3_1 = Student_1("태연",25,"카카오")
student4_1 = Student_1("태연",25,"카카오")
student3_1 == student4_1
student5_1 = Student("태연",25,"카카오")
student6_1 = Student("태연",25,"카카오")
student5_1 == student6_1
'''
@dataclass
'''
student6_1.major = 'Google'
student6_1
@dataclass(frozen=True)
class Employee:
name : str
position : str
employee1 = Employee("John","Manager")
employee1
employee1.name = 'Jane'
employee1
def func(msg="Hi"):
print(msg)
func("Hello")
func()
@dataclass
class AppConfig:
debug : bool = False
database_url : str ="some_url"
port : int = 1234
default_config = AppConfig()
default_config
custom_config = AppConfig(debug = True,database_url='naver',port=4321)
custom_config
from dataclasses import dataclass, field
@dataclass
class StudentCourses:
name : str
courses : list = field(default_factory=list)
student10 = StudentCourses(name='멋사')
student10.courses.append("파이썬 문법")
student10.courses.append("웹서비스")
student10.courses.append("배포")
student10
class A:
def __init__(self,name,courses=[]):
self.name = name
self.courses = courses
a = A("a")
a
a.courses.append("파이썬")
b = A("b")
a.courses, b.courses
class A:
def __init__(self,name,courses=None):
self.name = name
if courses is None:
self.courses = []
else:
self.courses = courses
a = A('a')
a.courses
b = A('b')
b.courses
a.courses.append("good")
a.courses
b.courses
def get_age(age):
assert age >= 0, "값이 잘못 입력됨"
print("당신의 나이는 {}세".format(age))
get_age(15)
get_age(-15)
import this
days_to_complete = 10
def process(data):
pass
def remove_duplicated_records(data):
pass
status = True
if status == True:
pass
if status:
pass
result = []
for i in range(10):
if i % 2 == 0:
result.append(i**2)
result = [i**2 for i in range(10) if i%2 == 0]
def process_data(data):
pass
def preprocess_data(data):
pass
def process_data(data):
pass
nums = [ i for i in range(100)]
total = 0
for num in nums:
total += num
average = total /len(nums)
average
average = sum(nums) / len(nums)
average
status = None
if status == "success" or status == "complete" or status == "finished":
pass
if status in ["success","complete","finished"]:
pass
result = some_function(param1, param2, param3, param4, param5)
result = some_function(param1,
param2,
param3,
param4,
param5)
next_week = current_time + week_time
print("Result : ", process_data(data))
result = process_data(data)
print("Result : ", result)
items = [(i,i*3) for i in range(10)]
for item in items:
if item:
for value in item:
pass
def process_data(data):
return int(data)
data = "일이삼"
try:
process_data(data)
except ValueError as e:
print(f"ValueError:{e}")
except Exception as e:
print(f"Unexpected error : {e}")
from math import sqrt
print(sqrt(4))
def make_request(url, timeout=5):
pass
make_request("http://example.com",10)
make_request(url = "http://example.com",timeout = 10)
def get_position():
return 100,200
x,y = get_position()
x,y
position = get_position()
x = position[0]
y = position[1]
x,y
x,y = get_position()
x,y
result = list(map(lambda x:x**2, filter(lambda x:x%2==0,range(10))))
result
result = [x**2 for x in range(10) if x%2 == 0]
def is_prime_1(n):
return n>1 and all(n%i for i in range(2,n))
def is_prime_2(n):
if n <= 1:
return False
for i in range(2, int(n**0.5)):
if n % i == 0:
return False
return True
%%time
is_prime_1(10007)
%%time
is_prime_2(10007)
class Animal: pass
class Dog(Animal): pass
def make_sound(animal_type):
sounds = {"dong":"bark","cat":"meow"}
return sounds.get(animal_type, 'unknown')
class MyClass:
pass
def my_function():
pass
import requests
url = "https://www.dhlottery.co.kr/common.do?method=getLottoNumber&drwNo=100"
response = requests.get(url)
output = response.json()
output