LMS
# 예시 코드
def number_generator():
yield 0
yield 1
yield 2
for i in number_generator():
print(i)
>>>
0
1
2
import time
start = time.time() # 시작 시간 저장
a = 1
for i in range(100):
a += 1
# 작업 코드
print("time :", time.time() - start) # 결과는 '초' 단위 입니다.
>>> time : 0.00010514259338378906
list_data = [30, 20, 30, 40]
def minmax_function(x_list):
def inner_min_function(x):
length = len(x)
min_result = x[0]
for i in range(length):
if min_result > x[i]:
min_result = x[i]
return min_result
def inner_max_function(x):
length = len(x)
max_result = x[0]
for i in range(length):
if max_result < x[i]:
max_result = x[i]
return max_result
x_min = inner_min_function(x_list)
x_max = inner_max_function(x_list)
minmax_list = [x_min, x_max]
return minmax_list
print("최솟값, 최댓값은 : ", minmax_function(list_data))
print("최솟값은 : ", minmax_function(list_data)[0])
print("최댓값은 : ", minmax_function(list_data)[1])
>>>
최솟값, 최댓값은 : [20, 40]
최솟값은 : 20
최댓값은 : 40
map 함수의 정의
: 입력받은 자료형의 각 요소가 함수에 의해 수행된 결과를 묶어서 map iterator 객체로 출력
모듈의 정의
:모듈은 함수, 변수, 클래스를 모아 놓은 파일을 말합니다. 즉, 코드의 저장소라고 볼 수 있습니다.
모듈 만드는 법
1) 실행할 함수, 변수 등을 코드로 짠다
2) 텍스트 그 자체로(\n 등도 포함되게) '모듈이름'.py로 저장한다
3) 실행은 import '모듈이름'
4) '모듈이름'.메소드()로 실행
프로그래밍 패러다임(programming paradigm)
1) 객체 지향 프로그래밍(Object Oriented Programming)
2) 함수형 프로그래밍(Functional Programming)
장점 : 순수성으로 함수 외부에 영향을 안 줌 / 모듈화 시켜서 가독성 좋음 / 디버깅 및 테스트에 용이
함수형 프로그래밍, 제너레이터 documentation
파이썬 스타일 가이드
: whitespace, naming conventions 등 협업 시 모두가 잘 알아볼 수 있는 깔끔한 코드를 만들기 위한 가이드가 있다.
클래스에서 __init__
은 클래스가 호출돼서 객체가 생성될 때마다 실행된다
풀잎스쿨
__init__
함수를 만들고, 이 함수에서 앞으로 생성될 class 객체에 대한 속성(?)들을 각각 변수들에 대입해서 잡아준다.__init__(self, name, age...)
로 해줄 경우self.name
, self.age
등을 통해 해당 객체의 속성을 이렇게 정의해준다.(i for i in iterable)
은 generator object를 만든다.