본문 바로가기

파이썬7

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.
[코딜리티] Lesson 10. Prime and composite numbers - CountFactors 문제 (+파이썬 코드) Question. CountFactors 약수 개수 구하는 문제다. Answer. O(sqrt(n)) ​ i*i 2021. 2. 21.
[백준] 11724. 연결 요소의 개수 (+파이썬 코드) Question. 백준 11724. 연결 요소의 개수 Answer. 프로그래머스의 "네트워크"랑 비슷한 문제여서 자세한 풀이는 생략한다. sohyunwriter.tistory.com/90 [프로그래머스] "네트워크" (+파이썬 코드) Question. 프로그래머스 깊이/너비 우선 탐색(DFS/BFS) > 네트워크 Answer. computers라는 인접행렬(adjacency matrix) graph가 주어지는데, 해당 graph에서 connected component가 몇 개인지 구하는 문제이다. b.. sohyunwriter.tistory.com sol 1) 인접리스트 + dfs 반복문 주의사항 1) sys.stdin.readline 써야 시간초과 안 남 2) dfs 돌릴 때, visited한 node.. 2021. 2. 15.
[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.
[Python] is 와 == 의 차이 *is / == 차이 == is for value equality. Use it when you would like to know if two objects have the same value. is is for reference equality. Use it when you would like to know if two references refer to the same object. 즉, is는 변수가 같은 Object(객체)를 가리키면 True ==는 변수가 같은 Value(값)을 가지면 True *is의 예시 - a와 b는 같은 리스트 객체를 가리킨다 - a와 b는 같은 객체이기 때문에 True - a와 c는 값은 같지만 다른 객체이기 때문에 False # 리스트 선언 a = [1, 2, 3] b.. 2021. 1. 26.