为什么这两个输出的内容一样呢?
myteacher = '小甲鱼'
yourteacher = myteacher
yourteacher = '黑夜'
print(myteacher)
myteacher = '小甲鱼'
yourteacher = myteacher
myteacher = '黑夜'
print(yourteacher)
无论是上面这个程序还是下面这个,
他们的第三行,都是对之前没有影响的,
他们的第三行只是名字重复了,在内存中把这个变量原来的值顶替了,然而并不影响第二行院线赋好的值。
可以连接下id()函数。 重复赋值只会显示最后一次的名字,前面的名字会被覆盖掉 myteacher = '小甲鱼' #第一步, “小甲鱼”赋值给了myteacher
yourteacher = myteacher #第二步, myteacher中的值赋给了yourteacher =>过程即为 yourteacher ←myteacher←"小甲鱼"
yourteacher = '黑夜' #第三步, yourteacher中的值发生了变化,之前存储在yourteacher中的"小甲鱼"变成了"黑夜"
print(myteacher) #print打印的是myteacher,就是第二步中的字符串中的值,即为”小甲鱼”
myteacher = '小甲鱼' #这三个变量之间的转换与上面的类似,第一步,将“小甲鱼”这个值赋给myteacher
yourteacher = myteacher #第二步,myteacher中的值赋给了myteacher,即“小甲鱼”,这是变量之间的转化,跟字符串的赋值有区别
myteacher = '黑夜' #第三步,myteacher中的值发生了变化,现在变成了"黑夜”
print(yourteacher) #print打印的是yourteacher,即第二步,所以会显示"小甲鱼"这个结果
在python中程序的运行是自上而下自左向右的
希望对你有帮助
页:
[1]