擅长:python、mysql、java
<p>通过使用<code>enumerate</code>,您可以变得更具python风格。除此之外,这个列表几乎就是你想要什么的定义:</p>
<pre><code>>>> lst = range(20)
>>> [e for i, e in enumerate(lst) if i % 5]
[1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 19]
</code></pre>
<p>另一种方法是获取切片并将其链接起来,但我不认为这更简单(如果<code>k</code>很大,列表很长,则可能更快):</p>
<pre><code>from itertools import islice, chain
def without_kth(lst, k):
return list(chain.from_iterable(
islice(lst, i+1, i+k) for i in range(0, len(lst), k)
))
</code></pre>