摘要:本文主要向大家介绍了Python语言之Python语言之Pyhton入门 面向对象 类,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助。
本文主要向大家介绍了Python语言之Python语言之Pyhton入门 面向对象 类,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助。
类的定义
1)class Student(): #定义类 class
name=''
age=0
def print_file(self): #定义类中的函数称为方法,没有参数时要用self
print('name:' + self.name) #使用变量时也要加self
print('age:' +str(self.age))
student = Student() #类的实例化,赋值给变量
student.print_file() #调用类的方法
2)如果要对实例化类传入参数的话,要通过__init__构造函数来实现
class Student(): #定义类 class
name=''
age=0 # name,age为类变量
def __init__(self,name,age): #构造函数中当要传递参数时要通过self.来传递。传递后的self.name为实例变量。其中构造函数中的self参数不是关键字,可以为this来代替,当然下面的实例变量也要变为thins.name
self.name=name
self.age=age
print('student')
def print_file(self): #定义类中的函数称为方法,没有参数时要用self
print('name:' + self.name) #使用变量时也要加self
print('age:' +str(self.age))
student1 = Student('小明',18) #类的实例化,赋值给变量,实例化时会自动调用__init__构造函数
print(student1.name)
__dict__字典变量
print(student1.__dict__)可以打印出student1对象下所有的参数字典
3)在构造函数或实例方法中访问类变量
class Tngh():
name="dddd"
age= 0
tt="红色"
def __init__(self,name,age)
self.name=name
self.age=age
print(Tngh.tt) #通过类访问
print(self.__class__.tt) #通过sefl下class访问
4)类方法
class Tngh():
name="小晨"
age= 0
sum1=0
@classmethod # 对类方法的定义一定通过·装饰器@classmethod 同时类方法的参数为(cls) cls也可改为别的
def puls_sum(cls)
print(cls.sum1) #类方法中对类变量的操作更简单。
Tngh.puls_sum() #类方法的调用
5)静态方法
class Tngh():
sum=0
@staticmethod #静态方法也要通过装饰器@staticmethod来定义
def add(x,y):
print(Tngh.sum) #静态方法也可以直接对类变量进行操作
pass
student=Tngh()
student.add(1,2) #对象对静态方法的调用
Tngh.add(1,2) #类对静态方法的调用
6)可见性
对类变量和类方法的私有化,在变量名和方法名前加__可使变量和方法私有化,如__name,__puls()。当私有化后,在类外就不可以读取和重写。
7)类的可继承
class Human():
class Tngh(Human): #表示类Tngh继承类Human
8)类元素的继承
class Human():
sum=0
def __init__(self,name,age):
self.name=name
self.age=age
def get_name(self):
print(self.name)
class Tngh(Human): #类Tngh继承父类Human
def __init__(self,shool,name,age): #子类Tngh的构造函数的参数为shool。但因为继承了父类Human,所以也要加入父类的参数name和age。所以子类的构造函数的参数为shool,name,age
self.shool=shool
Human.__init__(self,name,age) #第一种调用父类的构造函数(不常用)。把值传过去。
super(Tngh,self).__init__(name,age) #第二种调用父类的构造函数(常用) super不至可以调用父类的构造函数,也可以在实例方法中调用父类的实例方法。
def do_homework(self):
super(Tngh,self).get_name() #子类实例方法调用父类的get_name()实例方法
print('english homework')
student=Tngh('人民小学',‘小明’,18)
本文由职坐标整理并发布,希望对同学们学习Python有所帮助,更多内容请关注职坐标编程语言Python频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号