标签:out 执行 计算 exp 直接 path dict mod 切割
复习6次课(12月3日)
2.5/2.6 模块使用
2.7 面向对象介绍
2.8 类的属性
2.9 类的方法
3.0 类的内置方法
3.1/3.2 类的继承
笔记:
模块:
模块是Python组织代码的基本方式。
一个Python脚本可以单独运行,也可以导入到另一个脚本中运行,当脚本被导入运行时,我们将其称为模块(module)。
所有的.py文件都可以作为一个模块导入
模块名与脚本的文件名相同
例如我们编写了一个名为hello.py的脚本,则可以在另一个脚本中用import hello语句来导入它。
包:
Python的模块可以按目录组织为包
创建一个包的步骤:
- 创建一个名字为包名的目录
- 在该目录下创建一个__init__.py文件
- 根据需要,在该目录下存放脚本文件或已编译的扩展及子包
- import pack.m1, pack.m2, pack.m3
Python path
sys.path
export PYTHONPATH
总结:
模块是一个可以导入的Python脚本文件;
包是一些按目录组织的模块和子包,目录下有__init__.py文件,此文件可以存放包的信息;
导入模块和包的语法:
- import , import as
- from … import …
面向对象介绍:
面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想。OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数。
面向过程的程序设计把计算机程序视为一系列的命令集合,即一组函数的顺序执行。为了简化程序设计,面向过程把函数继续切分为子函数,即把大块函数通过切割成小块函数来降低系统的复杂度。
而面向对象的程序设计把计算机程序视为一组对象的集合,而每个对象都可以接收其他对象发过来的消息,并处理这些消息,计算机程序的执行就是一系列消息在各个对象之间传递。
在Python中,所有数据类型都可以视为对象,当然也可以自定义对象。自定义的对象数据类型就是面向对象中的类(Class)的概念。
类的属性:
类的属性按使用范围分为公有属性和私有属性,类的属性范围取决于属性的名称。
- 公有属性:在类中和类外都能调用的属性。
- 私有属性:不能在类外及被类以外的函数调用。
定义方式:以”__”双下划线开始的成员变量就是私有属性
可以通过instance._classname__attribute方式访问。
- 内置属性:由系统在定义类的时候默认添加的,由前后双下划线构成,__dict__, __module__。
类的方法:
方法的定义和函数一样,但是需要self作为第一个参数。
类方法为:
- 公有方法
- 私有方法
- 类方法
- 静态方法
公有方法:在类中和类外都能调用的方法。
私有方法:不能被类的外部调用,在方法前面加上”__”双下划线就是私有方法。
self参数
用于区分函数和类的方法(必须有一个self),self参数表示执行对象本身。
类方法:被classmethod()函数处理过的函数,能被类所调用,也能被对象所调用(是继承的关系)
静态方法:相当于”全局函数”,可以被类直接调用,可以被所有实例化对象共享,通过staticmethod()定义,静态方法没有”self”参数。
装饰器:
- @classmethod
- @staticmethod
类的内置方法:
方法1:直接使用外部类调用内部类
object_name = outclass_name.inclass_name()
方法2:先对外部类进行实例化,然后再实例化内部类
out_name = outclass_name()
in_name = out_name.inclass_name()
in_name.method()
类的继承:
即一个派生类(derived class)继承基类(base class)的字段和方法。继承也允许把一个派生类的对象作为一个基类对象对待。例如,有这样一个设计:一个Dog类型的对象派生自Animal类,这是模拟"是一个(is-a)"关系(例图,Dog是一个Animal)。
标签:out 执行 计算 exp 直接 path dict mod 切割
原文地址:http://www.cnblogs.com/llill/p/7966238.html