博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python类的定义、方法和属性使用
阅读量:2119 次
发布时间:2019-04-30

本文共 968 字,大约阅读时间需要 3 分钟。

类用来描述具有相同的属性和方法的对象的集合。

对于在类中定义的函数,称为方法。
类变量不直接叫做类变量,称为属性。

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)

运行结果:

hello0x36dfd68<__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.属性名访问。
 

转载地址:http://nezrf.baihongyu.com/

你可能感兴趣的文章
Git的Patch功能
查看>>
分析C语言的声明
查看>>
TCP为什么是三次握手,为什么不是两次或者四次 && TCP四次挥手
查看>>
C结构体、C++结构体、C++类的区别
查看>>
进程和线程的概念、区别和联系
查看>>
CMake 入门实战
查看>>
绑定CPU逻辑核心的利器——taskset
查看>>
Linux下perf性能测试火焰图只显示函数地址不显示函数名的问题
查看>>
c结构体、c++结构体和c++类的区别以及错误纠正
查看>>
Linux下查看根目录各文件内存占用情况
查看>>
A星算法详解(个人认为最详细,最通俗易懂的一个版本)
查看>>
利用栈实现DFS
查看>>
逆序对的数量(递归+归并思想)
查看>>
数的范围(二分查找上下界)
查看>>
算法导论阅读顺序
查看>>
Windows程序设计:直线绘制
查看>>
linux之CentOS下文件解压方式
查看>>
Django字段的创建并连接MYSQL
查看>>
div标签布局的使用
查看>>
HTML中表格的使用
查看>>