Python bisect.bisect_left()와 bisect.bisect_right
bisect.bisect_left(a, x, lo=0, hi=len(a), *, key=None) 문서 내 설명: 정렬된 순서를 유지하도록 시퀀스 변수 a에 x를 삽입할 위치를 찾습니다. 매개 변수 lo 와 hi는 고려해야 할 리스트의 부분집합을 지정하는 데 사용될 수 있습니다; 기본적으로 전체 리스트가 사용됩니다. x가 a에 이미 있으면, 삽입 위치는 기존 항목 앞(왼쪽)이 됩니다. 반환 값은 a가 이미 정렬되었다고 가정할 때 list.insert()의 첫 번째 매개 변수로 사용하기에 적합합니다. 요약 a에 x가 존재할 때, x의 가장 처음인덱스를 반환한다. a에 x가 존재하지 않을 때는 a에 x를 삽입했을 때 그 인덱스를 반환한다. bisect.bisect_right(a, x, lo=0, hi=len..
2022. 9. 10.
[python] 파이썬 리스트의 슬라이싱
파이썬의 슬라이싱이란? 파이썬에서는 시퀀스 객체(리스트, 튜플, 문자열, range객체)의 요소 슬라이싱 기능을 지원하며, 여기서 슬라이싱이란 말그대로 시퀀스 객체의 일부를 잘라내는 것이다 아래 예시를 살펴보자. lst = [2, 3, 5, 7, 1] print(lst[2:4]) # [5, 7] 리스트 lst의 2번째 요소 ~ 4번째 요소 직전 요소까지 잘라낸 결과이다. 문법 sequence[start:stop[:step]] start: 슬라이싱을 시작할 인덱스 번호이다. 생략 시 기본값은 0이다. stop: 슬라이싱을 멈출 인덱스 번호로 생략 시 기본값은 시퀀스 객체의 크기까지이다 즉, 마지막 요소까지라는 말이다. step: range()함수에서도 step 매겨변수가 존재하는 것 처럼 슬라이싱에도 이를..
2022. 9. 5.