在我没有定义的情况下,python如何猜测正在定义的函数中的参数?
今天我讲述了一些关于列表的老步骤,其中之一是为脚本编写一个简单的练习列表:在我没有定义的情况下,python如何猜测正在定义的函数中的参数?,python,Python,今天我讲述了一些关于列表的老步骤,其中之一是为脚本编写一个简单的练习列表: fruits = ['apple', 'raspberry', 'banana'] for fruit in fruits: print(fruit) 我明白了 apple raspberry banana 很简单,但用粗体字表示,水果还没有定义。那么python是如何知道我在说什么的呢 奇怪的是,当我用它运行代码时,notbeingfruit我得到了不同的答案。例如,如果我写 for w in frui
fruits = ['apple', 'raspberry', 'banana']
for fruit in fruits:
print(fruit)
我明白了
apple
raspberry
banana
很简单,但用粗体字表示,水果还没有定义。那么python是如何知道我在说什么的呢
奇怪的是,当我用它运行代码时,notbeingfruit
我得到了不同的答案。例如,如果我写
for w in fruits:
print(fruit)
我明白了
为什么会发生这种情况?这条蟒蛇对我来说是在猜测吗?我以为代码不应该这样做。
对于水果中的水果:
是循环的开始。第一次通过循环时,Python拾取fruit
的第一个值,并将fruit
赋值给该值。第二次通过循环时,它拾取水果
的第二个值,并将水果
重新指定给该值。最后,循环中的第三个值也会发生同样的情况
没有猜测。没有猜测;您在为水果中的水果编写时给了它一个名称:
。也就是说,“循环通过水果
,在每个循环上,在执行循环内容之前,将水果
中的下一项分配给名称水果
”
当您对水果中的w执行<代码>操作时,您看到<代码>香蕉重复的原因是,您在运行水果中的水果<代码>的同一终端会话或脚本中执行了该操作,并且<代码>水果继续绑定到前一个循环中分配给它的最后一个值(来自<代码>水果的最终值)w
不断从fruits
反弹到连续项目,但您从未使用过它,您只是一直使用未更改的fruits
值
对于水果中的w:
打印(w)我不明白这个问题。使用
中的变量for fruit
定义它。执行第二个循环时,fruit
仍然具有第一个循环中分配给它的最后一个值。所以你一直在打印这个值。是的,它已经定义好了,就在这里:对于水果中的水果
在发布问题之前,请先学习python基础知识。StackOverflow不是让其他人完成你的作业;这是在你无法通过谷歌搜索解决的问题上寻求帮助。请从中重复[如何提问]()。最重要的是,在你发布文章之前,先研究一个问题。堆栈溢出不是用来取代现有的教程和文档。好的,谢谢。但是,如果我改为插补w
或其他什么,为什么会得到不同的输出?通常,如果从头开始运行,它会在print(fruit)
行出错,因为fruit
没有定义。在您的情况下,您在运行第一个循环之后运行它,这意味着水果
仍然被分配给香蕉
,因为您没有打印w?如果你写print(w)
你会得到预期的答案,至于你为什么会得到香蕉,可能是因为你在第一次循环后,在一个新的程序中,香蕉不会显示出来,但他的问题是为什么他写print(fuit)
banana
banana
banana