Python 딕셔너리 정렬 (Key, Value 기준 sort)
예제 mydict = {'d': 50, 'a': 20, 'b': 30, 'e': 10, 'c': 30} 1. Key를 기준으로 정렬 (오름차순) mydict_sorted = sorted(mydict.items()) print(mydict_sorted) [('a', 20), ('b', 30), ('c', 30), ('d', 50), ('e', 10)] 2. Key를 기준으로 정렬 (내림차순) mydict_sorted = sorted(mydict.items(), key=lambda x:x[0], reverse=True) print(mydict_sorted) [('e', 10), ('d', 50), ('c', 30), ('b', 30), ('a', 20)] 3. Value를 기준으로 정렬 (오름차순) mydi..
2022. 4. 9.
[Python] list 복사 ([:], copy(), deepcopy())
파이썬 ps를 하면서 많이 하기 쉬운 실수들에 대해 적는다. 다음 두 코드의 결과는 어떻게 될까? 하나는 맞고 하나는 이상한 결과를 배출한다. 1) class Solution(object): def subsets(self, nums): """ :type nums: List[int] :rtype: List[List[int]] """ results = [] def dfs(nums, k, pos, subsets=[]): if k == 0: results.append(subsets) return for i in range(pos, len(nums)): subsets.append(nums[i]) dfs(nums, k - 1, i + 1, subsets) subsets.pop() for i in range(len(..
2021. 2. 11.
python list append() vs extend() 차이
*python list append() vs extend() 차이 python list에 새로운 원소를 추가하는 방법은 append(x)와 extend(iterable)이 있다. 각각의 차이에 대해 묻는 질문을 본 적이 있어 정리한다. - list.append(x) : 리스트 끝에 x 1개를 '그대로' 넣는다 - list.extend(iterable) : 리스트 끝에 '가장 바깥쪽 iterable'의 모든 항목을 넣는다 가령 [a, b, c]에 [d, e]를 추가한다고 할 때, append를 쓰면 [a, b, c, [d, e]] 이런 식으로 들어간다. 그런데 [a, b, c, d, e]로 넣고 싶다... 그러면 extend를 쓰면 된다! 이렇게 [ ]를 벗기고 넣어야 할 때 쓰는 게 extend다. 생각..
2021. 1. 31.