![]() |
1
40
我以前被(别人的)“聪明”的代码咬过,这些代码试图在遍历列表时修改列表。我下定决心在任何情况下都不干。
可以使用切片算子
关于我的示例的其他要点与 python 3.0 .
|
![]() |
2
49
永远不要更改正在循环的容器,因为该容器上的迭代器不会被通知您的更改,而且正如您所注意到的,这很可能会产生非常不同的循环和/或不正确的循环。在正常情况下,在容器副本上循环有帮助,但在您的情况下,很明显 不要 需要这样做,因为在循环的50段之后容器将是空的,如果您再次尝试弹出,您将得到一个异常。
但最不清楚的是,如果你想达到什么样的行为?也许你可以用一种方式表达你的欲望
|
![]() |
3
11
一般的经验法则是,在遍历集合/数组/列表时不要修改它。 使用辅助列表来存储要操作的项,并在初始循环之后在循环中执行该逻辑。 |
![]() |
5
8
使用while循环检查数组的真实性:
它应该做到没有任何错误或滑稽行为。 |
![]() |
6
1
我想这就是你想要的:
当要弹出的项目数是运行时决策时,编写代码非常方便。 但是它的运行效率很差,而且代码很难维护。 |
![]() |
7
0
此切片语法将复制列表并执行所需的操作:
|
|
Julia · 矢量中相加为总和S的值的数量 2 年前 |
![]() |
apetrai · 我应该如何假设算法使用哪种迭代器类别? 2 年前 |
![]() |
Pratik · 不使用Java DeepCopy迭代器 6 年前 |
![]() |
PanDe · 将两个列表合并为一个Dict、Tuple 6 年前 |
![]() |
bisarch · 迭代哈希集并在每次迭代中删除多个元素 6 年前 |