반응형
Asterisk : unpacking a container
tuple, dict 등 자료형에 들어가 있는 값을 unpacking
함수의 입력값, zip 등에 유용하게 사용가능
-. tuple을 넘김
1 2 3 4 5 6 | def asterisk_test(a, *args): print(a, args) print(type(args)) asterisk_test(1, 2, 3, 4, 5, 6) | cs |
Output :
1 (2, 3, 4, 5, 6)
<class 'tuple'>
-. dict를 넘길 때는 **를 두번씀
1 2 3 4 5 | def asterisk_test(a, **kargs): print(a, kargs) print(type(kargs)) asterisk_test(1, b = 2, c = 3, d = 4, e = 5, f = 6) | cs |
Output :
1 {'b': 2, 'c': 3, 'd': 4, 'e': 5, 'f': 6}
<class 'dict'>
* 한번만 기재 시 아래와 같은 오류 발생 : asterisk_test() got an unexpected keyword argument 'b'
-. 풀어서 던지고, 묶어서 받고~
1 2 3 4 5 6 | def asterisk_test(a, *args): print(a, args) print(a, args[0]) print(type(args)) asterisk_test(1, (2, 3, 4, 5, 6)) | cs |
Output :
1 ((2, 3, 4, 5, 6),)
1 (2, 3, 4, 5, 6)
<class 'tuple'>
1 2 3 4 5 6 7 | a, b, c = ([1, 2], [3, 4], [5, 6]) print(b) print(a, b, c) data = ([1, 2], [3, 4], [5, 6]) print(data) print(*data) | cs |
Output :
[3, 4]
[1, 2] [3, 4] [5, 6]
([1, 2], [3, 4], [5, 6])
[1, 2] [3, 4] [5, 6]
반응형
'Computer Science > Programming-Python' 카테고리의 다른 글
Lambda & MapReduce (0) | 2019.05.06 |
---|---|
Enumerate & Zip (0) | 2019.05.06 |
[자료구조3#] Dictionary (0) | 2019.05.06 |
[자료구조2#] Tuple (0) | 2019.05.06 |
[자료구조1#] List (0) | 2019.05.06 |
댓글