没响应 发表于 2020-5-25 22:42:14

求帮忙,不能理解的一个问题!

在程序里面声明一个 b
然后在后面有会写b = b * 12;
请知道的朋友解释一下,为什么可以用同一个b表示2个数值?

sunrise085 发表于 2020-5-25 22:45:49

本帖最后由 sunrise085 于 2020-5-25 22:58 编辑

这不是用同一个b表示两个数值。
是改变了b的值

举个简单例子,假设你在银行开了一个账户(声明了一个变量b),存进去1万元(给b赋值),然后把这1万元取出来做生意,1万元变成了12万(b*12),又存进了这个账户(b=b*12)。

Cute_Traver_Cat 发表于 2020-5-25 23:00:29

b = b * 12
1.将b*12
2.将b*12的值赋值给b,所以此时b的值是初始b的值乘12之后的值,b的值永久改变

Twilight6 发表于 2020-5-26 00:20:31

本帖最后由 Twilight6 于 2020-5-26 00:22 编辑

赋值操作是先把等号右边运算后得到的结果再赋值给左边的参数

所以 b = b * 12    实际上Python会先计算赋值的右边也就是等号的右边 b * 12, 得出 b * 12 值的结果后再赋值给 b

而不是你说的一个值代表两个噢~

青出于蓝 发表于 2020-5-26 08:06:27

=赋值,=左边的是赋值的变量,=右边的是运算结果赋值给等号左边

WoodenlightW 发表于 2020-5-28 23:04:39

b只是一个代号,就相当于一个盒子,里面装了一个数,b = b*12就是里面的数拿出来*12,然后重新放回盒子里
页: [1]
查看完整版本: 求帮忙,不能理解的一个问题!