python中class的定义及使用教程


Posted in Python onSeptember 18, 2019

类的定义

class classname[(父类名)]:

? 成员函数及成员变量

_ init _ 构造函数:初始化对象

_ del_ 析构函数:销毁对象

定义类的成员函数时,必须默认一个变量代表类定义的对象本身,这个变量的名称可自行定义,下面的程序使用self变量表示类对象的变量

具体代码如下所示:

python中class的定义及使用


#类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。
#对象:它是类的实例化。
#方法:类中定义的函数。
#类(Class) 由3个部分构成:
'''
类的名称:类名
类的属性:指对象的特征(一组数据)
类的方法:允许对象进行操作的方法 (行为/功能)
'''
# Python 3.x中取消了经典类,默认都是新式类。
# 新式类的语法 -> class 类名(object): pass
# 类对象支持两种操作:属性引用 和 实例化。
# 属性引用的语法:obj.属性
# 类实例化的语法:obj = 类名()
# 类中方法的调用:obj.方法名()
# 下面分析新式类的2种常见形式:
#例1:
#自定义一个类student
class student(object):
 def speak(self): ## 哪个对象调用了这个方法,self就是那个对象;可以把self理解为一个形参
 print("%s 说:我今年%s岁" % (self.name, self.age))
#类student 实例化一个对象john
john = student()
# 给对象添加属性
john.name = "约翰"
john.age = 19
# 调用类中的 speak()方法
john.speak()
#<<<约翰 说:我今年19岁
#例2:
class student(object):
 # 定义构造方法
 def __init__(self, n, a): #__init__() 是类的初始化方法;它在类的实例化操作后 会自动调用,不需要手动调用;
 # 设置属性
 self.name = n
 self.age = a
 # 定义普通方法
 def speak(self):
 print("%s 说:我今年%s岁" % (self.name, self.age))
#类student 实例化一个对象john
john = student("约翰",19)
# 调用类中的 speak()方法
john.speak()
#>>>约翰 说:我今年19岁
# 在python中使用__开头 并以__结尾的方法,称之为魔法方法;
# __init__(self) 是类的初始化方法,也称构造方法,是一种特殊的魔法方法。
# __init__(self)在实例化后,会自动调用,而不用手动调用,所以一般把属性设置在_init__()里。
# 常用到的魔法方法还有:__str__(self) 、 __del__(self)等。
## __str__(self)
class student(object):
 # 定义构造方法
 def __init__(self, n, a):
 # 设置属性
 self.name = n
 self.age = a
 # 输出一个字符串(追踪对象属性信息变化)
 def __str__(self): # __str__(self)不可以添加参数(形参)
 return "名字:%s 年龄:%d" % (self.name, self.age)
# 实例化一个对象john
john = student("约翰",19)
# 当使用print输出对象时,只要自己定义了__str__(self)方法,那么就会打印从在这个方法中return的数据
print(john)
#>>>名字:约翰 年龄:19

总结

以上所述是小编给大家介绍的python中class的定义及使用教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python中的类学习笔记
Sep 23 Python
python字典序问题实例
Sep 26 Python
Python简单进程锁代码实例
Apr 27 Python
Python批量重命名同一文件夹下文件的方法
May 25 Python
Python基于递归和非递归算法求两个数最大公约数、最小公倍数示例
May 21 Python
python清除函数占用的内存方法
Jun 25 Python
基于Python中求和函数sum的用法详解
Jun 28 Python
Pandas 数据处理,数据清洗详解
Jul 10 Python
对Python3 pyc 文件的使用详解
Feb 16 Python
Python 2/3下处理cjk编码的zip文件的方法
Apr 26 Python
python 求1-100之间的奇数或者偶数之和的实例
Jun 11 Python
Python绘制组合图的示例
Sep 18 Python
django创建超级用户过程解析
Sep 18 #Python
python实现网站微信登录的示例代码
Sep 18 #Python
简单了解python中的与或非运算
Sep 18 #Python
python字符串替换re.sub()方法解析
Sep 18 #Python
python安装virtualenv虚拟环境步骤图文详解
Sep 18 #Python
用Python写一个自动木马程序
Sep 17 #Python
Pycharm中出现ImportError:DLL load failed:找不到指定模块的解决方法
Sep 17 #Python
You might like
php smarty模版引擎中的缓存应用
2009/12/11 PHP
php导出word文档与excel电子表格的简单示例代码
2014/03/08 PHP
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
2016/02/23 PHP
php图形jpgraph操作实例分析
2017/02/22 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
Laravel 连接(Join)示例
2019/10/16 PHP
javascript实现二分查找法实现代码
2007/11/12 Javascript
javascript 多浏览器 事件大全
2010/03/23 Javascript
VBS通过WMI监视注册表变动的代码
2011/10/27 Javascript
JavaScript中的对象的extensible属性介绍
2014/12/30 Javascript
javascript实现限制上传文件大小
2015/02/06 Javascript
jquery图片轮播特效代码分享
2020/04/20 Javascript
jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)
2016/06/07 Javascript
大白话讲解JavaScript的Promise
2017/04/06 Javascript
MUI 上拉刷新/下拉加载功能实例代码
2017/04/13 Javascript
AngularJS双向绑定和依赖反转实例详解
2017/04/15 Javascript
移动端自适应flexible.js的使用方法(不用三大框架,仅写一个单html页面使用)推荐
2019/04/02 Javascript
让你30分钟快速掌握vue3教程
2020/10/26 Javascript
梯度下降法介绍及利用Python实现的方法示例
2017/07/12 Python
python实现微信远程控制电脑
2018/02/22 Python
使用Python实现一个栈判断括号是否平衡
2018/08/23 Python
解决新django中的path不能使用正则表达式的问题
2018/12/18 Python
Python3 关于pycharm自动导入包快捷设置的方法
2019/01/16 Python
几行Python代码爬取3000+上市公司的信息
2019/01/24 Python
python for和else语句趣谈
2019/07/02 Python
mac 上配置Pycharm连接远程服务器并实现使用远程服务器Python解释器的方法
2020/03/19 Python
Python如何使用bokeh包和geojson数据绘制地图
2020/03/21 Python
python实现批处理文件
2020/07/28 Python
安装Anaconda3及使用Jupyter的方法
2020/10/27 Python
拉斯维加斯城市观光通行证:Las Vegas Pass
2019/05/21 全球购物
GetYourGuide台湾:预订旅游活动、景点和旅游项目
2019/06/10 全球购物
妇联主席先进事迹
2014/05/18 职场文书
幼儿园大班区域活动总结
2014/07/09 职场文书
2014年行政工作总结
2014/11/19 职场文书
python脚本框架webpy模板赋值实现
2021/11/20 Python
win server2012 r2服务器共享文件夹如何设置
2022/06/21 Servers