| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
例1: 
myteacher = '小甲鱼' 
yourteacher = myteacher 
yourteacher = '黑夜' 
print(myteacher) 
输出结果是:小甲鱼 
 
例2: 
my_foods = ['pizza','falafel','carrot cake'] 
friend_foods = my_foods 
my_foods.append('cannoli') 
friend_foods.append('ice cream') 
print(my_foods) 
print(friend_foods) 
输出结果是: 
['pizza', 'falafel', 'carrot cake', 'cannoli', 'ice cream'] 
['pizza', 'falafel', 'carrot cake', 'cannoli', 'ice cream'] 
 
例1变量存储字符串,例2变量存储列表,输出结果不一样的原因是赋值的类型不一样吗?这个该怎么理解呢?
 本帖最后由 jackz007 于 2022-11-8 18:39 编辑 
- myteacher = '小甲鱼'     # myteacher 指向 '小甲鱼'
 
 - yourteacher = myteacher  # yourteacher 也指向 '小甲鱼'
 
 - yourteacher = '黑夜'     # yourteacher 指向 '黑夜'
 
 - print(myteacher)         # myteacher 依然指向 '小甲鱼'
 
  
- my_foods = ['pizza','falafel','carrot cake']  # my_foods 指向 ['pizza','falafel','carrot cake']
 
 - friend_foods = my_foods                       # friend_foods 也指向 ['pizza','falafel','carrot cake']
 
 - my_foods.append('cannoli')                    # ['pizza','falafel','carrot cake'] 添加新元素 'cannoli'
 
 - friend_foods.append('ice cream')              # ['pizza','falafel','carrot cake' , 'cannoli'] 添加新元素 'ice cream'
 
 - print(my_foods)                               # ['pizza','falafel','carrot cake' , 'cannoli' , 'ice cream']
 
 - print(friend_foods)                           # ['pizza','falafel','carrot cake' , 'cannoli' , 'ice cream']
 
  复制代码
       变量名只是贴在对象上的一个标签,只是访问对象的一个途径而已,一个对象可以同时有很多个标签,就像本例,多个变量同时指向同一个对象。例2中可修改对象改变,不影响贴在对象上的标签。  
 
 
 |   
 
 
 
 |