我喜欢浏览stackovorflow,寻找python代码的精华。 我昨天偶然发现了这个小道消息,它使我困惑不解。你知道吗
有人能解释一下下面的代码是如何工作的,它是什么类型的代码,以及我在哪里可以找到更多关于使用它的信息吗?你知道吗
我试过寻找这种东西,但不知道它是什么动物,搜索结果毫无用处。你知道吗
# Fibonacci Series
n = 1000
a, b=0, 1
while a<n:
print(a,end=" ")
a, b=b, a+b
print()
令我困惑的台词是 “a,b=0,1” 和 “a,b=b,a+b”
它们似乎是某种默认数据类型的一种格式,但是type()命令会阻塞并终止它。篡改结构会使其进入无休止的循环或导致程序崩溃。同样,尝试将部分分割成单独的行,或者用分号替换逗号。你知道吗
它是某种形式的python理解吗?你知道吗
我喜欢这个东西!谢谢你的帮助。你知道吗
这是一个元组赋值。 我想重新排列空格和添加括号会让事情变得更清楚:
a, b=0, 1
是(a, b) = (0, 1)
以及
a, b=b, a+b
是(a, b) = (b, a+b)
您提到的示例来自Python documentation。你知道吗
a, b = 0, 1
表示a = 0
和b = 1
。你知道吗而
a, b = b, a + b
表示a = b
和b = a + b
。你知道吗重要的是要注意
b = a + b
使用前面的值a
,因为当您在同一行中进行多个赋值时,它们就像是在同一时间执行的(尽管实际上它们不是)。你知道吗这是多重赋值语法。读
(a, b)= (b, a+b)
。所有正确的表达式在左边的赋值之前求值。你知道吗方便交换:
a, b= b, a
或置换,其中:a, b, c= b, c, a
。你知道吗请注意,
a, b= b, a+b
不等同于a= b
后跟b= a+b
,反之亦然。你知道吗相关问题 更多 >
编程相关推荐