首页 > 代码库 > python基础随学笔记
python基础随学笔记
1、python字符串输出有很多种。a=‘‘‘name:{0},age:{1},sex:{2}‘‘‘.format(name,age,sex)第一种
name="lijiaxiang"
age=12
sex="male"
a=‘‘‘name:{_name},age:{_age},sex:{_sex}‘‘‘.format(_name=name,_age=age,_sex=sex)第二种
字符串还有一种+号拼接。这种是最不推荐的。因为上面的两种都是在内存中开辟特定的内存,但是+号是开很多段内存。所以这一点是最不推荐的。所以忘记这种拼接方式
2、深复制与浅复制区别:之前学习java也看过深复制和浅复制,但是当时一直也没有搞明白到底什么是深复制,什么是浅复制,昨天听老男孩课程,alex老师讲了一个例子,我觉得特别容易理解。所谓浅复制,就是只复制了最外一层。而深复制,可以说是整个内容的完全复制(这才是我们想象中的复制)。那么什么叫复制最外一层呢?举个简单例子:
#encoding:utf-8
import copy
a=["kalson",[15,25],"male"]
b=copy.copy(a)
print a
print b
a[0]="kangkang"
a[1][0]=18
b[0]="mike"
print a
print b
===========================结果如下===========
[‘kalson‘, [15, 25], ‘male‘]
[‘kalson‘, [15, 25], ‘male‘]
[‘kangkang‘, [18, 25], ‘male‘]
[‘mike‘, [18, 25], ‘male‘]
大家看到,对于最外层,复制后各自不相关,a中kalson-->kangkang,b中kalson-->mike.但是只在a中修改了15-->18,b中却也是修改了。这就是说对于[18,25],因为这已经不是基本数据类型了,实际上a中是存储了[15,25]的地址。所以这已经算是另外一层了。而这一层,用简单的copy浅复制已经不行了。
一下图片不知道是否可以让大家更好的理解?反正对我来说是比较明确的理解了。第一次写博文,有表述不清楚的还请各位朋友见谅。
本文出自 “让往事如烟” 博客,请务必保留此出处http://kalson.blog.51cto.com/12267030/1950083
python基础随学笔记