python分享-中阶(1)
2016-07-30 10:47
363 查看
一、list和tuple差别
list内元素可变,而tuple内元素不可变;
TypeError: 'tuple' object does not support item assignment
表面上看,aTuple中的第四个元素发生了变化。但实际上是list内的元素发生了变化,而其第四个元素,在内存中的地址是没有变化的。
二、对象拷贝、浅拷贝、深拷贝
#打印输出
def printResult(aData,bData):
print 'aData内存地址:',id(aData)
print 'bData内存地址:',id(bData)
print 'aData元素地址:',[id(elem) for elem in aData]
print 'bData元素地址:',[id(elem) for elem in bData]
print
list内元素可变,而tuple内元素不可变;
aList = ['jack',27,'master',['java','lua','python']] aList[0] = 'willy' print aList aTuple = ('jack',27,'master',['java','lua','python']) #aTuple[0] = 'willy' aTuple[3][0] = 'c++' print aTuple上面注释的部分,会报错
TypeError: 'tuple' object does not support item assignment
表面上看,aTuple中的第四个元素发生了变化。但实际上是list内的元素发生了变化,而其第四个元素,在内存中的地址是没有变化的。
二、对象拷贝、浅拷贝、深拷贝
#打印输出
def printResult(aData,bData):
print 'aData内存地址:',id(aData)
print 'bData内存地址:',id(bData)
print 'aData元素地址:',[id(elem) for elem in aData]
print 'bData元素地址:',[id(elem) for elem in bData]
相关文章推荐
- py-faster-rcnn标注FDDB人脸便于其在FDDB上进行测试
- Python
- python脚本实现发送邮件功能
- Python中protobuf
- python编码问题
- Python学习基础之一:字符串
- Python操作MySQL -即pymysql/SQLAlchemy用法
- python编码声明问题
- Python3之sqlalchemy
- Python3之RabbitMQ
- 在pika中使用tornado协程
- Python使用SMTP发送邮件(163,yeah等网易邮箱已测试可以)
- Mac中安装Python+Django+MySQL完整步骤
- Python 01:Pyton历史和入门介绍
- python zip函数
- 创建Python本地副本
- python collections defaultdict
- Python核心编程第三版第二章学习笔记
- 查看python 3中的内置函数列表,以及函数功能描述
- python - 操作RabbitMQ