14-类的定义方法
Posted tiantiancode
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了14-类的定义方法相关的知识,希望对你有一定的参考价值。
lesson14类的定义方法
#视频1:回顾代码
--------------------------------------------------
#视频2:类定义及属性
1 # class Person: #经典 2 # pass 3 4 class Person2(object): #新式 5 attr = ‘ren‘ # 类公有属性 可以用类访问,也可以用实例访问 6 _attr1 = ‘siyou‘ # 私有属性,外部可以访问 7 __attr2 = ‘chaoren‘ # 私有属性,外部不可以直接访问 8 9 yanzhi = Person2() 10 yanzhi.name =‘yanzhi‘ #实例属性 只能用实例访问 11 yanzhi.age =18 12 13 print(yanzhi.attr) 14 print(yanzhi.name) 15 print(yanzhi.age) 16 17 print(yanzhi._attr1) 18 # print(yanzhi.__attr1) #错误 ,不能直接访问私有属性 19 print(Person2.attr) 20 21 print(‘-------------------------------‘) 22 moran = Person2() 23 print(moran.attr)
#运行:
ren
yanzhi
18
siyou
ren
-------------------------------
ren
--------------------------------------------------
#视频3 实例方法
1 #实例方法 2 class Hero(object): 3 def move(self): #self代表的是实例本身,哪个实例调用就代表的是哪个实例 4 print(‘%s正在移动‘%self.name) 5 6 def skill(self): 7 print(‘%s使用技能:砍一刀‘%self.name) 8 9 yanzhi=Hero() 10 moran =Hero() 11 yanzhi.name= ‘yanzhi‘ 12 moran.name=‘moran‘ 13 14 moran.move() 15 moran.skill() 16 17 yanzhi.move() 18 yanzhi.skill()
#运行:
moran正在移动
moran使用技能:砍一刀
yanzhi正在移动
yanzhi使用技能:砍一刀
--------------------------------------------------
#视频4 类初始化 与析构
1 class Hero(object): 2 def __init__(self,name,PH,age): 3 self.name =name 4 self.PH=PH 5 self.age=age 6 print(‘%s初始化init‘%self.name) 7 8 def move(self): 9 print(‘%s正在移动‘%self.name) 10 11 def skill(self): 12 print(‘%s使用技能:砍一刀‘%self.name) 13 14 def __del__(self): 15 print(‘%s销毁‘%self.name) 16 17 yanzhi =Hero(‘yanzhi‘,5000,18) 18 moran =Hero(‘moran‘,6000,19) 19 20 yanzhi.move() 21 print(yanzhi.PH) 22 23 # del yanzhi
#运行:
yanzhi初始化init
moran初始化init
yanzhi正在移动
5000
作业:
1 #作业 2 # 定义个矩形类: 3 # 4 # 可以初始化长和宽两个实例属性, 5 # 还有一个计算面积的方法 6 # 然后创建一个矩形 实例对象,调用方法计算矩形面积 7 class Rectangle(object): 8 def __init__(self,wide,length): 9 self.wide =wide 10 self.length=length 11 12 def sear(self): 13 s =self.length*self.wide 14 print(‘矩形面积是%s‘%s) 15 16 rec1 = Rectangle(10,12) 17 rec1.sear()
#运行:
ssh://pyvip@127.0.0.1:1234/home/pyvip/.virtualenvs/py3env/bin/python3 -u /home/pyvip/20180606py_case/基础/14面向对象3.py
矩形面积是120
以上是关于14-类的定义方法的主要内容,如果未能解决你的问题,请参考以下文章