在很多例子中,我看到了我简单称为速记操作符的内容。大多数情况下,它们出现在循环中并列出相关的函数。我没有找到解释它们是什么或它们含义的资源。这些字母在Python中代表什么?
for x in list:
for i in range(10):
for c in "hello, world":
我在谈论for
之后的单个字母:x
,i
,c
和其他字母。
答案 0 :(得分:3)
那些不是运算符,它们是迭代变量。循环的要点是将该变量顺序绑定到可迭代的值(在您的示例中称为list
)。
它们可以有任何名称,而不会影响程序语义(仅仅因为名称)。请注意,它们是引入范围的正常变量,因此将受global
声明的影响,并在退出循环后生效。
答案 1 :(得分:1)
虽然在for
循环中用于迭代变量的名称完全取决于您,正如Marcin所说,我将添加经常使用的单字母名称,并且某些名称已围绕它们制定了约定。虽然通常使用简短的名字是令人不悦的,因为它们可能是神秘的,循环的主体通常足够短,你不会忘记它们的含义,并且它们将在循环中经常被引用,所以你节省了一些打字。 / p>
示例可能包括i
,j
和k
索引,x
作为常规占位符(也是x
,y
,和z
对于笛卡尔坐标),t
表示时间或元组(例如,当迭代元组列表时;在迭代序列列表时,您可能也会看到d
,{{1}对于一个对象列表),o
表示字符,c
表示字符(例如,当迭代字符串时),或w
和k
表示迭代时的键和值通过字典的项目。
您可能还会看到v
(单个下划线)用于未使用的迭代变量,例如在_
之类的列表解析中,它会创建五个不同于同一对象的新列表。你需要一个迭代变量来接收来自[[] for _ in range(5)]
的值,但是循环的要点是执行它五次,而不是对这些值做任何事情。