猿问

是否可以在没有迭代器变量的情况下为范围循环实现Python?

是否可以在没有迭代器变量的情况下为范围循环实现Python?

没有这个可以做以下i吗?

for i in range(some_number):
    # do something

如果你只是想做N次,并且不需要迭代器


摇曳的蔷薇
浏览 475回答 3
3回答

DIEA

在我的头顶,没有。我认为你能做的最好的是这样的:def&nbsp;loop(f,n): &nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;i&nbsp;in&nbsp;xrange(n):&nbsp;f()loop(lambda:&nbsp;<insert&nbsp;expression&nbsp;here>,&nbsp;5)但我认为你可以忍受额外的i变量。这是使用_变量的选项,实际上,它只是另一个变量。for&nbsp;_&nbsp;in&nbsp;range(n): &nbsp;&nbsp;&nbsp;&nbsp;do_something()请注意,_分配了交互式python会话中返回的最后一个结果:>>>&nbsp;1+23>>>&nbsp;_3出于这个原因,我不会以这种方式使用它。我不知道Ryan提到的任何成语。它会弄乱你的口译员。>>>&nbsp;for&nbsp;_&nbsp;in&nbsp;xrange(10):&nbsp;pass...>>>&nbsp;_9>>>&nbsp;1+23>>>&nbsp;_9根据Python语法,它是一个可接受的变量名称:identifier&nbsp;::=&nbsp;(letter|"_")&nbsp;(letter&nbsp;|&nbsp;digit&nbsp;|&nbsp;"_")*

慕容森

你可能正在寻找for&nbsp;_&nbsp;in&nbsp;itertools.repeat(None,&nbsp;times):&nbsp;...这是times在Python中迭代次数的最快方法。

aluckdog

分配给未使用的值的一般习惯用法是命名它_。for&nbsp;_&nbsp;in&nbsp;range(times): &nbsp;&nbsp;&nbsp;&nbsp;do_stuff()
随时随地看视频慕课网APP

相关分类

Python
我要回答