python笔记06-10
作者:Vamei 出处:http://www.cnblogs.com/vamei
基础06 循环
for循环
举例:
range的用法
这个函数的功能是新建一个表。这个表的元素都是整数,从0开始,下一个元素比前一个大1, 直到函数中所写的上限 (不包括该上限本身)。
举例:
再举例:
whlie循环
举例:
中断循环
continue # 在循环的某一次执行中,如果遇到continue, 那么跳过这一次执行,进行下一次的操作
break # 停止执行整个循环
举例:
总结:
range()
for 元素 in 序列:
while 条件:
continue
break
基础07 函数
函数的定义
右边为实际输出:
再理解下return的用法:
当把return修改为print的时候,就是没有return的情况,所以会在执行结果下返回None。
练习:
写一个判断闰年的函数,参数为年、月、日。若是是闰年,返回True。
解:假设闰年判断依据为能被4整除且不能被100整除 或 能被400整除。其他情况暂时不考虑。
我发现,自己写错了。。
True/False在python中已有,用引号肯定不对啊。
答案如下:
再规范一点的话,在if条件后加上括号。
基础08 面向对象的基本概念
没看懂,明天再看下。
对象概念,面向对象的最主要目的是提高程序的重复使用性。
执行结果:
对象的定义方式
class name(object):
statement
class name(父类):
statement
括号中的object,当括号中为object时,说明这个类没有父类。
动作的概念:
定义函数move。
它的参数中有一个self,它是为了方便我们引用对象自身。方法的第一个参数必须是self,无论是否用到。
注意输出结果:
子类
其中有继承的概念。子类继承父类的所有特性,这个比较好理解。
执行结果:
总结:
将东西根据属性归类 ( 将object归为class )
方法是一种属性,表示动作
用继承来说明父类-子类关系。子类自动具有父类的所有属性。
self代表了根据类定义而创建的对象。
建立对一个对象: 对象名 = 类名()
引用对象的属性: object.attribute
基础09 面向对象的进一步扩展
调用类的其他方法
上面讲到,在定义对象的时候,object使用了self参数。
那么,除了
summer = Chicken()
print summer.have_feather
等引用方式,还可以用self去引用。
解释:
先定义了一个方法,这个方法的功能是打印当前类实例的laugh变量。
下面定义了另外一个方法叫做laugh_100th,这个方法的作用是打印100次hahahahaha。
self表示类实例本身。可以写其他的变量名但是作用都是一致的,一般不会写其他的变量名,大家约定都是self。
第一遍的时候没有看懂,改变了函数名,好理解一点。
所以我们知道了常规的引用(print self.laugh)外,还可以self.show()引用函数。最后输出为 meng.show100()。
注意,引用时格式为:
meng = human()
meng,show100()
扩展一下,对比下面三个写法的不同。
解释:None的结果为show_laugh()中return返回。
解释:调用laugh_100th()函数,print self.laugh输出hahahaha。
解释:用print执行def时,没有return值返回None值。
这边要讲的是,__init__为前后双下划线。
还有注意引用方式。
ma.gender解释:
基础10 总结
截取结果:
右边为输出结果。
注意每个操作的结果。
b = b[:]
引用方式见03 序列
len()-长度
直接使用__sub__该怎么写?