初识python
2020/5/25
Python 是一门面向对象语言。
定义类:
类的帮助信息可以通过 ClassName.__doc__ 查看。
class_suite 由类成员,方法,数据属性组成。
举例:
1、在Java中实现继承可以使用 extends 关键字,在python中使用 子类(父类) 实现继承。任何类都是 object 类的子类。
2、__init__() 方法是一种特殊的方法,被称为类的构造器或初始化方法,当创建类的实例的时候就会调用该方法,这一点和Java的构造器一样。
3、self 代表类的实例,是当前对象的地址,self 在定义类的方法时是必须要有的,虽然在调用时不必传入相应的参数。
注:self 不是python 的关键字,把它换成其它内容(例如 guan)也是可以正常执行的。
4、实例化对象。Java 中用 new 关键字,但是 python 中并没有这个关键字,python 中创建实例对象如下:
在实例化的时候,通过 __init__ 方法接收参数。
5、经常看到python 代码最下边 if __name__ == '__main__': 是什么意思?
先记着两点:
(1)如果直接执行某个 .py 文件,那么该文件中的 if __name__ == '__main__' 为True。
(2)如果从另一个 .py 文件通过 import 导入该文件,那么这个时候 if __name__ == '__main__' 为 False, 这时 __name__ 的值是该文件的名字,而不是__main__。
(3)总结一下,也就是说,__name__ 的值有两种,直接执行python文件就是默认值__main__ ;导入到其它模块就是文件名。
6、被python 里面的方法名称给整懵圈了,又是单下划线,又是双下划线,还有的以双下划线结尾,到底是啥意思???
记住了:
(1)单下划线 _ name :
_name 不能用于 from module import * 导入,以单下划线开头的表示的是protected类型的变量,即保护类型只能允许其本身与子类进行访问。以单下划线开头的属性或方法不能直接访问,需要通过类提供的接口进行访问,不能用 from *** import ** 导入。
(2)双下划线 __name :
以双下划线开头的代表类的私有类型成员,只允许这个类本身进行访问了,连子类也不可以访问。python 解析器会用 _classname__name 来代替这个名字,以区别和其它类相同的名称,就是告诉别的程序这个属性或方法是私有的。
(3)双下划线开头,双下划线结尾 __name__ :
一种约定,Python内部使用的名字,用来区别其他用户自定义的命名,代表python里特殊方法专有的标识,例如 __init__() 代表构造器。