- 博客(11)
- 收藏
- 关注
转载 面向对象编程-访问限制
从前面Student类的定义来看,外部代码还是可以自由地修改一个实例的name、score属性:>>> bart = Student('Bart Simpson', 59)>>> bart.score59>>> bart.score = 99>>> bart.score99如果要让内部属性不被外部访问,可以把属性的名称前加上两个下划线__,在Python中,实例的变量名如果
2018-01-29 01:39:36 437
原创 Python基础-列表生成式
在生成具有某些特征的数据的列表时,如果用之前介绍的方法,会很繁琐。一个优雅美丽的方法是列表生成式(List Comprehensions)。举个栗子:a=[1,2,3,4,5,6,7,8,9,10]b=[x for x in a if x%2==0]b[2,4,6,8]c=[x*x for x in a]c[1,2,9,16,25,36,49,64,81,100]还可以使用两层或以上循环:A,B,
2018-01-17 20:18:12 647
原创 Python基础-函数
定义函数def name(parameters):statements(return)return返回某个值或多个值,省略则返回none。参数的类型可以是任意的,也可以为空def subtraction(x,y):z=x-yreturn z调用subtraction(2,1)传入参数时,可以直接按照参数位置传入参数,称为位置参数;还可以用定义参数时使用的
2018-01-17 17:03:14 817
原创 Pyhton基础-判断与循环
判断if condition1:statement1elif condition2:statement2elif condition3:statement3else:statement4Python不仅仅可以使用布尔型变量作为条件,它可以直接在if中使用任何表达式作为条件:大部分表达式的值都会被当作True,但以下表达式值会被当作False:
2018-01-12 19:20:32 448
原创 浅拷贝(shallow copy)和深拷贝(deep copy)
记得面试的时候面试官问我浅复制和深复制有什么区别。只用过python里可变数据类型的copy函数的我一脸懵逼,xjb说了一点,结果自然惨不忍睹。。我回来一查,原来他说的是copy库。。敲里吗啊,copy库又不是一定要用,老子也不是学计算机的,哪知道这么细。。哎,终究是自己才疏学浅,怪不得别人。python中的unhashable数据类型都自带copy函数。这里的copy其实是所谓的浅拷
2018-01-11 13:41:50 974
原创 Python基础-集合与不可变集合
集合与不可变集合的关系和列表与元组之间的关系类似。先总结一下集合集合是一个无序的可变的序列。集合中的元素必须是可hash的,即不可变的数据类型。空集合a=set()注意a={}创建的是一个空字典。也可以用set()转化为集合b=[1,2,3,4]a=set(b)a{1,2,3,4}还可以用{}来创建一个集合a={1,2,3,4,1}
2018-01-10 20:45:57 19186
原创 Python基础-元组
元组,tuple,不可变的有序序列。所谓有序,是指它里面的元素位置固定,如果两个有序序列元素相同但位置不同,这就是两个不同的序列。a=(1,'a',[1,2,3],array([1,2,3]),(1,2,3))可以索引及分片a[2][1,2,3]不能通过索引分片改变它的元素,但是当它里面有可变的数据类型时,可以改变这些可变的数据类型的元素。也就是说,一旦一个元组生成了,它的si
2018-01-09 21:01:12 310
原创 Python基础-字典
Python里的字典dict,也就是和C++里的map一样,是一种由键值对组成的可变的无序的数据结构,即{键:值},键必须是不可变的数据类型(由于精度问题,不推荐用浮点数为键值),值可以是任意的数据类型。dict用hash的方法将大量的数据与键值配对,通过查询键值就可得到这些数据。创建一个空字典:a={} 或者a=dict()还可以用fromkeys的方法创建一个字典a={}.
2018-01-09 21:00:06 435
原创 Python基础-列表
列表嘛,很亲切表示方法:a=[1,'abc',[12,23],(2,34),{'a':1},{2,3,4},array([[1,5],[2,4]])可以看到,列表里的元素几乎可以是任何类型的空列表可以用a=[] 或 a=list()生成,此时len(a)=0支持索引,深层索引以及分片a[1][0] 'a'a[4]['a'] 1a[-1][0] ar...
2018-01-08 11:19:28 489
原创 Python基础-字符串
字符串,string,记得面试的时候面试官问了一句string,我一下没反应过来,真想找个地缝钻进去。。。s='string' or ''string'' 两者没差,输出都是'string'。如果内容里包括 ' 或者 '' 咋办?凉拌么。。。在前面加个反斜杠 \ 就好啦, 专业一点就是转义字符\了。s=' i\'m a girl has no name' or '\'' a gir
2018-01-07 21:57:46 228
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人