【python学习第9节笔记,面向对象(继承,封装,多态),zip函数,with语句】

一,面向对象(继承,封装,多态)

1.1封装

说明:
python类中,以双下划线"__"开头,不以双下划线结尾的标识符为私有成员。
私有成员分为:私有属性和私有方法,私有成员在子类和类外部无法访问
示例:

class test:
    def __init__(self):
        self.__a = 10
    def __private_method(self):
        print("私有方法被调用")
    def show_a(self):
        print("公有方法被调用")
        self.__private_method()	#可以在类内部被调用
        print(self.__a)
a = test()
a.show_a()

#执行结果
公有方法被调用
私有方法被调用
10

1.2继承/派生

说明:
单继承的语法:
class 子类名(超类名):
  ……
示例:

class human:
    def eat(self):
        print("吃饭")
class student(human):
    def study(self):
        print("学习")
a = student()
a.eat()
a.study()

#执行结果
吃饭
学习

1.3多态

说明:
多态是指在继承/派生关系的类中,调用基类对象的方法,实际能调用子类的覆盖方法(子类对父类方法的重写)现象叫多态

1.3.1纯虚函数

说明:
拥有纯虚函数的类称为抽象类(不能实例化,只能用于派生的类叫做抽象类。)
示例:

from abc import ABC, abstractmethod
class Base(ABC):			#base不能实例化
    def __init__(self):
        pass
    @abstractmethod
    def get(self):
        print("123")
        pass

class test1(Base):
    def __init__(self):
        pass
    def get(self):
        print("456")
        
a = test1()
a.get()

执行结果
456

作用:
在继承的关系中有些类没有必要去实例,他存在的意义就是派生子类,不让他实例化是为了不让发生混乱,方便管理。

二,zip函数

示例:

a = [1,2,3,4]
b = ['q','w','e']
c = zip(a,b)
for i in c:
    print(i)
    
#执行结果
(1, 'q')
(2, 'w')
(3, 'e')

三,with语句

语法:
  with 表达式 [as 别名]:
   语句块
说明:
 as子句中的变量绑定生产的对象
示例1:

with open('myfile.txt') as f: #把打开文件的返回值定一个别名f
	while True:
		3/0				#触发异常
		l = f.readline()
		print(l,end='')
		if len(l)==0:
			break

作用:
with的作用,进入环境的备份和出去环境的还原

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值