Python使用带有列表名称的while循环

时间:2016-10-16 13:07:20

标签: python list while-loop

我是python的初学者,所以这可能很简单,但我不确定以下代码的含义。

q=[start]
    while q:

这是否意味着当列表中至少有一个元素执行时,q为空时q变为false? 编辑:我现在无法执行它,我需要快速找到它。

1 个答案:

答案 0 :(得分:2)

q = [start]表示创建名为q的变量,并为其指定值[start] 。在这种情况下,它将创建一个包含一个元素的列表:变量start的值。它的语法与q = [1, 2]完全相同,但它使用的是变量而不是常量值。

在此之后,行while q:是Python的类型转换系统的使用(或滥用)。虽然循环需要一个布尔条件来知道它们是否应该重复,所以你的代码等同于while bool(q):。要了解其工作原理,请查看可能的案例:

bool([1]) == True # This applies for any non-empty list
bool([]) == False # This applies to any empty list

因此,while q:的含义实际上是'而q是非空的'。