Python类的定义方法和属性使用

Posted gdjlc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python类的定义方法和属性使用相关的知识,希望对你有一定的参考价值。

类用来描述具有相同的属性和方法的对象的集合。
对于在类中定义的函数,称为方法。
类变量不直接叫做类变量,称为属性。

1、类的定义

例子:

class User():
    pass

说明:

(1)定义了一个类名为User的类
(2)类名一般约定用大写字母开头,函数则用小写字母开头,以做区分
(3)用pass表示为空类,暂时还没准备好类的内容

2、类的方法

例子:

class User():
    def say(self) -> None:
        print(hello)

调用:

a = User()
a.say()
print(hex(id(a)))
print(a)

运行结果:

hello
0x36dfd68
<__main__.User object at 0x00000000036DFD68>

说明:

(1)上面定义了方法say,方法可以有0到多个参数,但第一个参数是必须有的,第一个参数有约定俗成的名字叫self在对象上调用一个方法时,不需要手动为self提供一个值,原因是解释器会自动把调用对象实例做为第一个参数,赋值给各个方法的self参数。
例如上面a.say()不需要为self提供值,解释器会自动转换为User.say(a)
(2)self 代表的是类的实例,上面hex(id(a))查询实例的内存地址,可以看出和打印对象名是同个地址。
对象可以用__repr__方法覆盖,例子:

class User():
    def __repr__(self) -> str:
        return 覆盖默认行为

调用:

a = User()
print(a)

运行结果:

覆盖默认行为 

3、类的属性

例子:

class User():
    def __init__(self, name: str) -> None:
        self.name = name        
    def say(self) -> str:
        print(我的名字是:, self.name)

调用:

a = User(张三)
print(a.name)
a.say()

运行结果:

张三
我的名字是: 张三

说明:

(1)用构造方法__init__初始化属性,在方法中用self.属性名访问。

以上是关于Python类的定义方法和属性使用的主要内容,如果未能解决你的问题,请参考以下文章

Python基础汇总003--Python面向对象即类(Class)相关的知识点汇总---类的定义对象的创建和使用类的属性和方法

python类的使用(类定义,构造器,类属性,方法)

Python 获取类属性

Python基础:Python类(真累~)

python干货-类属性和方法,类的方法重写

Python入门之面向对象编程python类的详解