看起来相似的Python for循环之间的区别?

时间:2019-02-23 15:02:34

标签: python python-3.x for-loop python-2.x conventions

我很好奇这种方式

for _ in range(10): #1

循环#1 的执行不同于

for i in range(10): #2

循环#2 执行。它们看起来确实完全相同,但是我想有一个清晰的了解,知道它们在引擎盖下的功能是否也完全相同?另外,我知道何时同时使用这两种类型的循环,因此,我正在寻找“何时使用什么?”的答案。

我已经读过this question,但是,它并没有提供明显的区别以及两者的内在作用。

2 个答案:

答案 0 :(得分:4)

他们都做完全相同的事情

如果变量是一次性变量且通常不在循环中引用,则使用前者

for _ in range(10): #1

如果您打算在循环中引用变量名,则使用后者

for i in range(10): #2

归根结底是python的命名约定-在幕后,两个循环的功能完全相同

答案 1 :(得分:1)

在python中,下划线字符是有效的var名称,因此bot代码段是相同的,但具有不同的var名称,例如@ AK47说,如果您不想在循环内使用var,请使用under under score,但是_这是一个有效的var名称,因此可以在循环中使用:

enter image description here

django之类的某些框架在其代码模式中使用下划线:

enter image description here