티스토리 뷰
*args
- 매개변수가 몇 개가 넘어갈지 모를 때, 가변 매개변수
- 파라미터에 몇 개를 넣어도 tuple 형태로 받아온다.
enumerate
- 인덱스를 달아준다.
- 순서가 있는 자료형(list, set, tuple, dictionary, string)을 입력으로 받아 인덱스 값을 포함하는 enumerate 객체를 리턴
**kwargs
- 키워드 인자 keyword arguments
- *일 때에는 튜플로 받고, ** 일 때에는 딕셔너리로 받음
혼합 형태
# arg1, arg2 : 반드시 있어야하는 파라미터
# *args, **kwargs : 가변인자
def example_mul(arg1, arg2, *args, **kwargs):
print(arg1, arg2, args, kwargs)
example_mul(1, 2, 3, 4, 5, 6, 7, age1= 24, age2=34)
type hint
- 가독성을 위한 것... 처음 보는 사람도 이것을 보고 int로 입력하고 list로 출력해야하는 것을 알 수 있게 한다.
- 협업이나 라이브러리 제작할 때에 좋다.
- integer를 입력받아서 list로 반환한다. 라는 것을 알려줌
def func_mul2(x : int) -> list:
y1 = x * 100
y2 = x * 200
y3 = x * 300
return [y1, y2, y3]
resultt = func_mul2(10)
print(resultt, type(resultt))
람다식
- 메모리 절약, 코드 간결, 가독성 향상
- 함수는 객체 생성 -> 메모리 할당
- 람다는 즉시 실행. (heap 초기화) -> 메모리 초기화
- 하지만 너무 람다식만 사용하게 되면 오히려 가독성이 떨어질 수 있다.
- 함수가 필요한 것은 함수로 있어야한다.
일반적 함수 -> 변수 할당
함수는 객체가 생성되었고, 메모리가 할당됨. 아직 함수를 사용하지는 않았지만, 메모리를 점유하고 있다.
def mul_10(num : int) -> int :
return num*10
var_func = mul_10
print(var_func, type(var_func))
print(var_func(10), type(var_func(10)))
lambda_mul_10 = lambda x : x*10
print(lambda_mul_10, type(lambda_mul_10))
print(lambda_mul_10(10), type(lambda_mul_10(10)))
def func_final(x, y, func):
print(x*y*func(10))
func_final(10, 10, lambda_mul_10)
func_final(10, 10, lambda x : x*10)
'python' 카테고리의 다른 글
[python django] django 기초 (1) (0) | 2019.12.20 |
---|---|
[python] 데이터베이스 연동 SQLite3 삽입, 수정, 삭제, Dump, commit (0) | 2019.12.05 |
[python] for - else 구문 (0) | 2019.12.03 |
[python] list, tuple, dictionary, set (0) | 2019.12.02 |
python 가상환경 설정 (0) | 2019.12.02 |
- Total
- Today
- Yesterday
- CellForRowAt 호출안됨
- iOS 데이터베이스
- 까만 화면
- CellForRowAt Not Called
- iOS 검은 화면
- django 게시판
- Firebase 데이터베이스 추천
- ModelForm Form 차이
- django 태그
- 장고 게시판
- django 개발일지
- 장고 태그달기
- 알파벳 카운팅
- django pythoneverywhere
- iOS UITableView 출력안됨
- UITableViewController Not Working
- cleaned_data
- iOS 화면 안나옴
- pythonanywhere배포방법
- django clean
- 웹 배포
- python 웹 배포
- 테이블출력안됨
- Realtime Database
- django 로그인접근
- pythonanywhere배포
- django tag
- 데이터베이스 추천
- 실시간 데이터베이스
- Django
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |