Python3 类

# 定义一个继承object的类
class Human(object):

    # 类属性,被所有此类的实例共用。
    species = "H. sapiens"

    # 构造方法,当实例被初始化时被调用。注意名字前后的双下划线,这是表明这个属
    # 性或方法对Python有特殊意义,但是允许用户自行定义。你自己取名时不应该用这
    # 种格式。
    def __init__(self, name):
        # Assign the argument to the instance‘s name attribute
        self.name = name

    # 实例方法,第一个参数总是self,就是这个实例对象
    def say(self, msg):
        return "{name}: {message}".format(name=self.name, message=msg)

    # 类方法,被所有此类的实例共用。第一个参数是这个类对象。
    @classmethod
    def get_species(cls):
        return cls.species

    # 静态方法。调用时没有实例或类的绑定。
    @staticmethod
    def grunt():
        return "*grunt*"

# 构造一个实例
i = Human(name="Ian")
print(i.say("hi"))     # 印出 "Ian: hi"

j = Human("Joel")
print(j.say("hello"))  # 印出 "Joel: hello"

# 调用一个类方法
i.get_species()   # => "H. sapiens"

# 改一个共用的类属性
Human.species = "H. neanderthalensis"
i.get_species()   # => "H. neanderthalensis"
j.get_species()   # => "H. neanderthalensis"

# 调用静态方法
Human.grunt()   # => "*grunt*"
时间: 2024-10-27 02:09:01

Python3 类的相关文章

python3 类的属性、方法、封装、继承及小实例

Python 类 Python中的类提供了面向对象编程的所有基本功能:类的继承机制允许多个基类,派生类可以覆盖基类中的任何方法,方法中可以调用基类中的同名方法. 对象可以包含任意数量和类型的数据. python类与c++类相似,提供了类的封装,继承.多继承,构造函数.析构函数. 在python3中,所有类最顶层父类都是object类,与java类似,如果定义类的时候没有写出父类,则object类就是其直接父类. 类定义 类定义语法格式如下: class ClassName:    <statem

python3 类的相关内容

转自:https://blog.csdn.net/rozol/article/details/69317339 相当的详细 定义类 #coding=utf-8 # class_my.py 定义类 (新式类) # 定义类 class Person: # 类属性 (class) (注:类/类方法 能修改类属性; 对象不能修改类属性,更改的只是实例属性) name = "name" # 公共属性 __adress = "adress" # 私有属性 (__属性 表示私有)

[Python3]类基础

概述 Python从设计之初就是面向对象的编程语言,所以在Python中创建一个类和对象是轻而易举的. 本文就Python的面向对象编程进行分享. 几个基本的概念 类(Class)简单理解为具有相同的属性和方法的对象的集合.定义了该集合中每个对象共有的属性和方法,对象是类的实例. 类变量类变量在整个实例化的对象中公用.定义在类中且在函数体外.(少用) 数据成员类变量或实例变量,用于处理类及其实例的数据 方法重写 如果从父类继承的方法满足不了应用,对该方法进行重新实现,这个过程叫override(

python3 类的组合使用

1.组合的定义 软件重用的重要方式除了继承之外还有另外一种方式,即:组合 组合指的是,在一个类中以另外一个类的对象作为数据属性,称为类的组合. class Weapon: def prick(self,obj): # 这是该装备的主动技能,扎死对方 obj -= 500 # 假设攻击力是500 print(obj) class Person: # 定义一个人类 role = 'person' # 人的角色属性都是人 def __init__(self, name): self.name = na

python3 类 组合

解决类与类之间代码冗余问题有两种解决方案: 第一 是继承,第二是组合 1:继承   描述的是类与类之间的也就是什么是什么的关系 2: 组合  描述的是类与类之间的关系,  是一种什么有什么的关系的,也可以说是一种从属关系, 一个类产生的对象,该对象拥有一个属性,这个属性的值是来自于另外一个类的对象. 原文地址:https://www.cnblogs.com/lx3822/p/8824581.html

python3类和实例

面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的"对象",每个对象都拥有相同的方法,但各自的数据可能不同. 仍以Student类为例,在Python中,定义类是通过class关键字: class Student(object): pass class后面紧接着是类名,即Student,类名通常是大写开头的单词,紧接着是(object),表示该类是从哪个类继承下来的,继承的概念我们后面再

Python3 类的继承小练习

1.打印并解释结果 class Parent(object): x = 1 class Child1(Parent): pass class Child2(Parent): pass print(Parent.x, Child1.x, Child2.x) Child1.x = 2 print(Parent.x, Child1.x, Child2.x) Parent.x = 3 print(Parent.x, Child1.x, Child2.x) 1 1 1 1 2 1 3 2 3 第一行: 子

PyThon3类的基本使用

代码: class Person: def __init__(self, name, age, sex): self.name = name self.age = age self.sex = sex def desc(self): print("name:{},age:{},sex:{}".format(self.name,self.age,self.sex)) if __name__ == '__main__': person1 = Person("Jack",

Python学习_10__python2到python3

同样作为动态语言,python的面相对像和ruby有很多类似的地方,这里还是推荐<Ruby元编程>一书来参考学习python的面向对象.然而python并不是纯面向对象设计,所以很多ruby种灵活的技巧在python中可能并不适用,但是这并不影响该书对python面向对象学习的借鉴意义. 从类和实例开始,谈python2到python3 类和实例是面向对象的基础,类是一个对象的定义,比如人类定义了人应该有的基本属性和方法,而实例则是真正的实物,实例中存放了对象的具体信息,如小明是人类的一个实例