0
点赞
收藏
分享

微信扫一扫

Python类和对象、模块

sin信仰 2022-03-11 阅读 91

对象的理解

Python类和对象、模块_python

Python类和对象、模块_python_02

对象的特征

Python类和对象、模块_父类_03

封装

信息隐蔽技术,例如BIF功能List我们可以执行append、sort等,但是我们不知道里面实现的逻辑,这叫做封装

继承

子类自动共享父类之间数据和方法的机制,​如果子类中定义父类同名的方法或属性,则会自动覆盖父类对应的方法或属性

class A(list):
pass
B = A() #
B.append(1);B.append(2);B.append(3)
print(B)
打印结果:
[1, 2, 3] #B继承了A列表对应的内部函数功能

class B(A) #A是父类,意味class B继承了父类功能
pass

多态

调用同样的函数名,实现不一样的功能

class A:
def fun(self):
print('我是小A')
class B:
def fun(self):
print('我是小B')
a = A();b = B()
print(a.fun(),b.fun())
打印结果:
我是小A
我是小B

面向对象

  1. OOA面向对象分析
  2. OOD面向对象设计
  3. OOP面向对象编程

面向对象有两个重要概念,​类(class)和实例(instance),类是抽象的模板,实例是根据类创建出来的一个个具体的“对象”

Python类和对象、模块_python_04

Python严格要求方法需要有实例才能被调用,这种限制其实就是Python所谓的绑定概念。

创建类
class Myclass(object): #pythong公约,类的第一个字母大写
pass
创建实例A
A = Myclass()

创建实例的时候,把我们认为必须绑定的属性强制填写进去,self、__init__ ,​例如在Student类时,把name、score等属性绑上去

class Student(object):
def __init__(self, name, score):
self.name = name
self.score = score


​模块的理解

  • 容器:对数据的封装,例如列表、元组、字符串、字典等
  • 函数:对语句的封装
  • 类:对方法和属性的封装,就是对函数和容器的封装
  • 模块:每个保存的.py都是一个独立的模块,也就是程序

模块的引入

模块的作用将大的程序拆成小分支,易于测试和阅读;一段好的模块作为中间件反复被利用

引入方式:
第一种:import 模块名
第二种:from 模块名 import 函数名 #这个方法引用模块函数等不需要再加模块前缀
第三种:import 模块名 as 新名字 #别名的方式可能在命名空间上最合适

模块的路径

if __name__ == ‘__main__’  #测试使用

搜索路径 #import sys命令用于查询模块默认可导入的路径,它是一个列表,因此可以通过sys.path.append导入指定模块路径

包(package)
1、创建一个文件夹,用于存放相关的模块,文件夹的名字即包的名字;
2、在文件夹中创建一个__init__.py的模块文件,内容可以为空;
3、将相关的模块放入文件夹中

Python类和对象、模块_父类_05

举报

相关推荐

0 条评论