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__该怎么写?


posted @ 2019-04-22 18:10  shenyin  阅读(177)  评论(0编辑  收藏  举报