如何在Python 2.7中使用临时变量 – 内存
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了如何在Python 2.7中使用临时变量 – 内存,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含938字,纯文字阅读大概需要2分钟。
内容图文
![如何在Python 2.7中使用临时变量 – 内存](/upload/InfoBanner/zyjiaocheng/962/d17ef86e70634d8a84057f79755dfe65.jpg)
我将’haystack’保存在临时变量中,但是当我修改’haystack’时,临时变量也会改变.为什么?请帮忙?这是正常的?在PHP我没有这个问题.
# -*- coding:utf-8 -*-
haystack = [1,'Two',3]
tempList = haystack
print 'TempList='
print tempList
iterable = 'hello'
haystack.extend(iterable)
print 'TempList='
print tempList
在控制台中返回
TempList=
[1, 'Two', 3]
TempList=
[1, 'Two', 3, 'h', 'e', 'l', 'l', 'o']
但我没有修改变量’tempList’.
求救,谢谢.谢谢.
解决方法:
您没有创建列表的副本;你只是创建了它的第二个引用.
如果要创建临时(浅)副本,请明确执行此操作:
tempList = list(haystack)
或使用完整列表切片:
tempList = haystack[:]
在对象上调用.extend()时,可以就地修改可变列表,因此对该列表的所有引用都将看到更改.
另一种方法是使用串联而不是扩展来创建新列表:
haystack = [1,'Two',3]
tempList = haystack # points to same list
haystack = haystack + list(iterable) # creates a *new* list object
现在,haystack变量已重新绑定到新列表; tempList仍然引用旧列表.
内容总结
以上是互联网集市为您收集整理的如何在Python 2.7中使用临时变量 – 内存全部内容,希望文章能够帮你解决如何在Python 2.7中使用临时变量 – 内存所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。