[Python] tuple을 dict로 변환
[방법1] t = ((1, 'a'), (2, 'b')) ret = dict((y, x) for x, y in t) print(ret) # {'a': 1, 'b': 2} [방법2] *recommend t = ((1, 'a'), (2, 'b')) ret = dict(map(reversed, t)) print(ret) # {'a': 1, 'b': 2}Referenceshttps://stackoverflow.com/questions/3783530/python-tuple-to-dict
2019.01.19
[Python] 단순복사 vs 얕은복사 vs 깊은복사
파이썬에서 활용되는 복사 유형에 대해 알아봅니다. 단순복사- 단순복사는 완전히 동일한 객체를 복사합니다.a = [1, [2, 3, 4]] b = a # b는 a와 같은 객체 주소를 바라 봅니다. print(b) # [1, [2, 3, 4]] b[0] = 100 b[1][0] = 100 print(a) # [100, [100, 3, 4]] print(b) # [100, [100, 3, 4]] * immutable 객체는 해당하지 않습니다.- immutable 참조변수를 수정하는 것은 값을 바꾸는 것이 아니라 새로운 객체를 할당하는 것입니다.a = 1 b = a print(b) # 1 b = 2 print(a) # 1 print(b) 얕은복사(shallow copy)# 방법1 b = copy.copy(a) ..
2019.01.15
[Python] list에서 element 개수 세기
list에서 element 개수를 세는 방법에 대해 알아봅니다. 특정 element 개수 세기numbers = [1, 2, 3, 4, 1, 2, 1] ret = numbers.count(1) print(ret) # 3 모든 element 개수 세기from collections import Count numbers = [1, 2, 3, 4, 1, 2, 1] ret = Counter(numbers) print(ret) # Counter({1: 3, 2: 2, 3: 1, 4: 1}) print(dict(ret)) # {1: 3, 2: 2, 3: 1, 4: 1} for key in ret: print('key:', key, 'value:', ret[key]) # key: 1 value: 3 # key: 2 va..
2019.01.14
[Python] list에서 dictionary 정렬
list에서 dictionary를 정렬하는 방법에 대해 알아봅니다.people = [ {'name': 'kim', 'age': 10}, {'name': 'lee', 'age': 20}, {'name': 'park', 'age': 30}, {'name': 'choi', 'age': 40}, {'name': 'kim', 'age': 50}, ] [방법1] sorted()+ lambda - sorted()와 lambda를 사용하여 name으로 오름차순 정렬 후 age로 오름차순 정렬하는 방법입니다.data = sorted(people, key=lambda person: (person['name'], person['age'])) for d in data: print(d) # {'name': 'choi', 'ag..
2019.01.13