我正在读一本书,我遇到了这个示例程序。我不确定第5行的numbers[position]
是如何在这里工作的?该变量赋值中position
和numbers
之间的关系是什么?
numbers = [1, 3, 5]
position = 0
while position < len(numbers):
number = numbers[position]
if number % 2 == 0:
print "Found even number", number
break
position = position + 1
else:
print "No even number found"
答案 0 :(得分:1)
方括号内的数字是列表的索引,
喜欢这样
lst = ["b", "c", 3] # Take care not to use "list" as a variable name by the way.
print lst[0] # I used lst in my example
给你:
"b"
列表的第一个元素。
然而,我不能不说,for循环是一种更好的方法。而不是逐个递增位置并告诉while循环在到达列表长度时停止对于理解概念是有好处的。我相信你的教科书将涵盖下一篇。
答案 1 :(得分:0)
它不是变量赋值,它的查找。 position
是一个索引;当它的值为0
时,numbers[position]
会返回1
(numbers
中的第一个元素),position
1
会获得3
list
1}}等等。
像0
这样的Python序列被索引为0-up,因此序列中的第一个元素位于索引len(seq) - 1
,而最后一个元素位于索引 getSupportFragmentManager()
。
答案 2 :(得分:0)
number = numbers[position]
字面意思是它所说的。 position
是列表中的一个位置。首先它被赋值为零,所以在执行numbers[position]
时,它实际上是在零位置的列表中调用数字,即1.然后它会position = position + 1
询问它在位置1中的数字列表等等。
答案 3 :(得分:0)
我不熟悉这种变量赋值方式。我已经看到使用索引号直接引用的列表。但自从这篇文章以来,我尝试了以下内容并将其清理干净。非常感谢你!
list1 = ["apples", "oranges"]
position = 1
output1 = list1[0]
output2 = list1[position]
print output1
print output2