PYTHON

프로그래밍 언어/Python

[Python] 리스트 순회 중 변경이 필요할 때

리스트을 순회하는 과정에서 데이터를 변경하다가 에러가 나는 경우는 굉장히 잦다. 특히 그 중에서 삭제는 가장 까다롭다. 이때, 리스트 표현식과 슬라이싱을 활용하여 데이터를 변경할 수 있다. 문제 예제 lost = [2,4]; reserve = [1,2,5] for i in range(len(reserve)): if reserve[i] in lost: del reserve[i] print(reserve) ''' Traceback (most recent call last): File "main.py", line 3, in if reserve[i] in lost: IndexError: list index out of range ''' 해결방법 리스트 표현식(List Comprehension) + 슬라이싱 lo..

프로그래밍 언어/Python

[Python] 파이썬 기본 연산 시간복잡도(Big-O)

알고리즘 문제들을 풀 땐 시간복잡도와 공간복잡도가 중요하다. 그 중 파이썬에서 자주 쓰이는 연산들의 시간복잡도를 자료형에 따라 정리했다. 리스트(List) Operation Example Complexity Notes Index l[i] O(1) Store l[i] = 0 O(1) Length len(l) O(1) Append l.append(5) O(1) Pop l.pop() O(1) same as l.pop(-1), popping at end Clear l.clear() O(1) similar to l = [] Slice l[a:b] O(b-a) l[1:5]:O(l)/l[:]:O(len(l)-0)=O(N) Extend l.extend(...) O(len(...)) depends only on len ..

코택
'PYTHON' 태그의 글 목록