我很好奇
for _ in range(10): #1
环α1 执行不同于
for i in range(10): #2
环α2 执行。他们看起来确实完全一样,但是,我想有一个清晰的了解,知道他们在引擎盖下的功能是否 确切地 相同的?而且,我知道这两种类型的循环何时使用,所以,我是 不 寻找“何时使用什么”的答案?.
我已经读过了 this question 但是,这并没有提供一个明确的区分,以及两者在幕后的作用。
他们都做同样的事
如果变量是可丢弃的,并且通常不在循环中引用,则使用前者
如果计划在循环中引用变量名,则使用后者
这可以归结为python命名约定——在hood下,两个循环的功能完全相同
在python中,下划线字符是一个有效的var名称,因此bot代码段是相同的,但具有不同的var名称,比如@ak47,如果不想在循环中使用var,则使用de under score,但是 _ 它是一个有效的变量名,因此可以在循环内使用:
_
一些框架(如django)在其代码模式中使用下划线: