>  기사  >  백엔드 개발  >  Python 슬라이싱을 사용하여 목록에서 모든 N번째 요소를 추출하는 방법

Python 슬라이싱을 사용하여 목록에서 모든 N번째 요소를 추출하는 방법

Linda Hamilton
Linda Hamilton원래의
2024-10-20 11:10:02689검색

How to Extract Every Nth Element from Lists Using Python Slicing

Python을 사용하여 목록에서 N번째 요소 추출

이 작업은 주어진 목록에서 모든 후속 N번째 항목을 추출하는 것입니다. 예를 들어, 정수 목록 [0, 1, 2, 3, ..., 997, 998, 999]이 주어지면 목표는 첫 번째 항목과 모든 후속 10번째 항목을 포함하는 새 목록을 얻는 것입니다. 결과는 [0, 10, 20, 30, ..., 990].

모듈러스 검사를 사용하는 for 루프는 간단한 접근 방식이지만 Python의 슬라이싱 연산자를 사용하면 더 간결하고 효율적인 솔루션이 있습니다.

<code class="python">xs = list(range(1000))
new_list = xs[0::10]</code>

이 줄은 한 줄의 코드로 작업을 수행합니다. xs[0::10] 구문은

  • 0이 시작 인덱스(포함)를 지정하는 슬라이스 표현식입니다.
  • ::10은 단계입니다. 10번째 요소마다.

결과 new_list에는 원하는 요소인 [0, 10, 20, 30, ..., 990]이 포함됩니다.

성능 비교

벤치마킹에 따르면 이 슬라이싱 접근 방식은 for 루프 솔루션보다 훨씬 빠릅니다.

$ python -m timeit -s "xs = list(range(1000))" "[x for i, x in enumerate(xs) if i % 10 == 0]"
517 loops, best of 5: 471.776 usec per loop

$ python -m timeit -s "xs = list(range(1000))" "xs[0::10]"
100000 loops, best of 5: 4.03 usec per loop

이는 목록에서 모든 N번째 항목을 추출하는 슬라이싱 접근 방식의 효율성과 단순성을 보여줍니다. 파이썬.

위 내용은 Python 슬라이싱을 사용하여 목록에서 모든 N번째 요소를 추출하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.