python类基础

Posted 山外云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python类基础相关的知识,希望对你有一定的参考价值。

 

 

#coding:gbk


class Person():
    def __init__(self,age,gender,height,weight):
        self.age = age
        self.gender = gender
        self.height = height
        self.weight = weight
        
    def run(self):
        print("体重为%s的人在跑步" % self.weight)
        
deo = Person(20,\'man\',\'170cmm\',\'70kg\')
deo.run()

 

 

类实例 =  类对象
函数 = 方法
一个类对象(类实例)可以调用类实例属性和类实例方法
 
类继承
#coding:gbk
class Person:
    
    can_eat = True
    
    def __init__(self, age, gander):
        self.age = age
        self.gander = gander
        
    def speck(self, words):
        print(\'I said :%s\' % words)
    
    def run(self):
        print(\'run\')


class Father(Person):
    
    def __init__(self, age, gander):
        Person.__init__(self, age, gander)
    
    def run(self):
        print(\'我跑不动了\')


class Son(Father):
    
    def __init__(self, age, gander, height):
        Father.__init__(self, age, gander)
        self.height = height

    def eat(self):
        print(\'我想吃糖果\')


son = Son(10, \'boy\', \'110cm\')
son.run()
son.speck(\'我想吃\')

1: 子类默认继承父类的类实例方法
2: 类实例属性继承需要在__init__(self)中加上
     FatherClass. __init__(self)
 
类的方法
#coding: gbk

class T:
    def __init__(self,name):
        self.name = name
        
    def ord_func(self):
        
        print(\'实例方法\')
        
    @classmethod
    def class_func(cls):
        print(\'类方法\')
        
    @staticmethod
    def static_func():
        print(\'静态方法\')
        
f = T(\'jack\')
f.ord_func()
#Foo.ord_func(f)

T.class_func()
#f.class_func()

T.static_func()

继承

#coding: gbk
class People:
    def __init__(self,name,age,weight):
        self.name = name
        self.age = age
        self.__weight = weight
    
    def speak(self):
        print(\'%s 说: 我 %d 岁...\' %(self.name,self.age))
        

class Son(People):
    def __init__(self,name,age,weight,grade):
        super(Son,self).__init__(name=name,age=age,weight=weight)    #等同于People.__init__(self, name, age, weight)


##
使用super()函数!最常见的就是通过super调用父类的实例化方法__init__! 语法:super(子类名, self).方法名(),需要传入的是子类名和self,调用的是父类里的方法,按父类的方法需要传入参数

        self.grade = grade
        
    def speak(self):
        print("%s 说: 我 %d 岁了,我在读 %d 年级" % (self.name, self.age, self.grade))
        
s = Son(\'jacky\',18,100,2)
s.speak()

 

 

 

 

 

以上是关于python类基础的主要内容,如果未能解决你的问题,请参考以下文章

python之基础篇——模块与包

[vscode]--HTML代码片段(基础版,reactvuejquery)

常用python日期日志获取内容循环的代码片段

如何通过单击片段内的线性布局从片段类开始新活动?下面是我的代码,但这不起作用

python 有用的Python代码片段

Python 向 Postman 请求代码片段