大佬教程收集整理的这篇文章主要介绍了为什么在 python3 中不使用 for in range(len(list) 时重复列表长度?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我是 techy101,我想知道为什么我的代码在循环中重复打印语句,甚至没有使用 for in range(len(List)),这是我的代码:
while True:
x = input('>> ')
xL = x.split()
print(xL)
result = []
token_plus = "+"
token_minus = "-"
token_multiply = "*"
token_divIDe = "/"
for token_plus in xL:
num1 = xl.index("+")
print(num1)
当我运行它时,它给出了这个输出:
>> 1 + 1
['1','+','1']
1
1
1
>>
为什么要这样做?
for token_plus in xL
表示为 xL 中的每个项目在循环内执行工作,而 xL 有 3 个项目,因此打印 3 次。
,for token_plus in xL:
将 token_plus
分配给 xL
中每个元素的元素值。因此,您的循环将遍历 xL
中的所有三个索引,从而将 1 打印三次。
编辑:
为了帮助澄清,第一个循环 token_plus
被分配给 1
。第二个循环将它分配给 +
。第三个循环分配给 1
。对于这三个循环中的每一个,都会执行 for 循环中的代码,从而在 +
中打印 xL
的索引,在所有三种情况下都是 1
。
xL
是一个列表,所以当你使用:
for token_plus in xL:
num1 = xl.index("+")
print(num1)
它的作用是遍历 xL
中的每个元素,因此您不必总是定义一个 range()
来进行循环。
range()
函数实际上是返回一个序列,python 循环遍历该序列。例如,range(3)
返回一个包含 0,1,2 的值序列,for 循环将为序列中的每个元素运行 3 次。
你正在这样做 -
for token_plus in xL:
这里的 xL 是一个序列(list 是一个序列;你可能想了解这个)。因为它有 3 个元素,所以您的 for 循环运行了 3 次并打印了 '+' 元素的索引。
以上是大佬教程为你收集整理的为什么在 python3 中不使用 for in range(len(list) 时重复列表长度?全部内容,希望文章能够帮你解决为什么在 python3 中不使用 for in range(len(list) 时重复列表长度?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。