python的 a,b=b,a+b 和 a=b b=a+b 的区别
n,a,b=0,0,1whilen<6:print(b)a,b=b,a+bn=n+1和n,a,b=0,0,1whilen<6:print(b)a=bb=a+bn=n+1输...
n,a,b=0,0,1
while n<6:
print(b)
a,b=b,a+b
n=n+1
和
n,a,b=0,0,1
while n<6:
print(b)
a=b
b=a+b
n=n+1
输出结果不一样 展开
while n<6:
print(b)
a,b=b,a+b
n=n+1
和
n,a,b=0,0,1
while n<6:
print(b)
a=b
b=a+b
n=n+1
输出结果不一样 展开
9个回答
展开全部
对于 a, b = b, a + b
我觉得这样理解简单一点
init_a = a
init_b = b
b = init_a + init_b
a = init_b
我觉得这样理解简单一点
init_a = a
init_b = b
b = init_a + init_b
a = init_b
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a, b = c, d
和
a = c
b = d
是完全等价的。
第一种写法是第二种写法的快捷写法。
特别是把一个二元元组或列表的两项分别赋给两个变量时,
第一种写法特别方便:
a, b = tuple_or_list
第二种写法呢:
a = tuple_or_list[0]
b = tuple_or_list[1]
多麻烦,傻得要死。
同样地,
a, b, c, ...... = A, B, C, ......
和
a = A
b = B
c = C
......
也是完全等价的。
和
a = c
b = d
是完全等价的。
第一种写法是第二种写法的快捷写法。
特别是把一个二元元组或列表的两项分别赋给两个变量时,
第一种写法特别方便:
a, b = tuple_or_list
第二种写法呢:
a = tuple_or_list[0]
b = tuple_or_list[1]
多麻烦,傻得要死。
同样地,
a, b, c, ...... = A, B, C, ......
和
a = A
b = B
c = C
......
也是完全等价的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以从优先级的角度理解:加号‘+’优先级比赋值符号‘=’优先级高,所以先算右边,然后再赋值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
python的 a,b=b,a+b 和 a=b b=a+b 的区别
pmcf4987 LV8
2016-04-17
n,a,b=0,0,1
while n<6:
print(b)
a,b=b,a+b
n=n+1
和
n,a,b=0,0,1
while n<6:
print(b)
a=b
b=a+b
n=n+1
输出结果不一样
满意答案
fxm13979005507
LV10
推荐于2019-08-09
区别就是:赋值运算,先计算赋值号(也就是=号左边的,再赋值)
1、a, b = b, a+b 这种赋值
先计算等值 右边 就是 b=1 a+b=1
再赋值给a和b,那么 a=1, b=1
2、a = b b = a+b
此时 b=1, 那么a=1 那么最后 b=2
a, b = b, a+b 这个表达式的意思就是说,先计算=号的右边b的值,a+b的值,算好了,然后再分别赋值给a 和b就可以了。
扩展资料:
Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine(Python虚拟机)来执行这些编译好的byte code。这种机制的基本思想跟Java,.NET是一致的。
然而,Python Virtual Machine与Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一种更高级的Virtual Machine。这里的高级并不是通常意义上的高级,不是说Python的Virtual Machine比Java或.NET的功能更强大,而是说和Java 或.NET相比,Python的Virtual Machine距离真实机器的距离更远。
或者可以这么说,Python的Virtual Machine是一种抽象层次更高的Virtual Machine。基于C的Python编译出的字节码文件,通常是.pyc格式。
除此之外,Python还可以以交互模式运行,比如主流操作系统Unix/Linux、Mac、Windows都可以直接在命令模式下直接运行Python交互环境。直接下达操作指令即可实现交互操作。
pmcf4987 LV8
2016-04-17
n,a,b=0,0,1
while n<6:
print(b)
a,b=b,a+b
n=n+1
和
n,a,b=0,0,1
while n<6:
print(b)
a=b
b=a+b
n=n+1
输出结果不一样
满意答案
fxm13979005507
LV10
推荐于2019-08-09
区别就是:赋值运算,先计算赋值号(也就是=号左边的,再赋值)
1、a, b = b, a+b 这种赋值
先计算等值 右边 就是 b=1 a+b=1
再赋值给a和b,那么 a=1, b=1
2、a = b b = a+b
此时 b=1, 那么a=1 那么最后 b=2
a, b = b, a+b 这个表达式的意思就是说,先计算=号的右边b的值,a+b的值,算好了,然后再分别赋值给a 和b就可以了。
扩展资料:
Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine(Python虚拟机)来执行这些编译好的byte code。这种机制的基本思想跟Java,.NET是一致的。
然而,Python Virtual Machine与Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一种更高级的Virtual Machine。这里的高级并不是通常意义上的高级,不是说Python的Virtual Machine比Java或.NET的功能更强大,而是说和Java 或.NET相比,Python的Virtual Machine距离真实机器的距离更远。
或者可以这么说,Python的Virtual Machine是一种抽象层次更高的Virtual Machine。基于C的Python编译出的字节码文件,通常是.pyc格式。
除此之外,Python还可以以交互模式运行,比如主流操作系统Unix/Linux、Mac、Windows都可以直接在命令模式下直接运行Python交互环境。直接下达操作指令即可实现交互操作。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询