相关疑难解决方法(0)

在Python中对切片进行高效迭代

Python中切片操作的迭代效率如何?如果切片不可避免地复制,是否有替代方案?

我知道列表上的切片操作是O(k),其中k是切片的大小.

x[5 : 5+k]  # O(k) copy operation
Run Code Online (Sandbox Code Playgroud)

然而,当迭代列表的一部分时,我发现最干净(和大多数Pythonic?)的方式(不必求助于索引)是这样做的:

for elem in x[5 : 5+k]:
  print elem
Run Code Online (Sandbox Code Playgroud)

然而,我的直觉是,这仍然会导致子列表的昂贵副本,而不是简单地迭代现有列表.

python iteration performance slice

10
推荐指数
2
解决办法
1万
查看次数

标签 统计

iteration ×1

performance ×1

python ×1

slice ×1