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将ip地址转换成整数的方法
Mar 17 Python
解析Python中的异常处理
Apr 28 Python
python用装饰器自动注册Tornado路由详解
Feb 14 Python
python添加模块搜索路径方法
Sep 11 Python
Python 查看文件的编码格式方法
Dec 21 Python
python 每天如何定时启动爬虫任务(实现方法分享)
May 21 Python
TensorFlow实现iris数据集线性回归
Sep 07 Python
python 求定积分和不定积分示例
Nov 20 Python
python GUI库图形界面开发之PyQt5浏览器控件QWebEngineView详细使用方法
Feb 26 Python
Python语法垃圾回收机制原理解析
Mar 25 Python
django Layui界面点击弹出对话框并请求逻辑生成分页的动态表格实例
May 12 Python
Python wordcloud库安装方法总结
Dec 31 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+javascript实现二级级联菜单的制作
2008/05/06 PHP
保存到桌面、设为桌面且带图标的PHP代码
2013/11/19 PHP
php两种无限分类方法实例
2015/04/21 PHP
PHP二维数组矩形转置实例
2016/07/20 PHP
Laravel学习教程之IOC容器的介绍与用例
2017/08/15 PHP
javascript使用中为什么10..toString()正常而10.toString()出错呢
2013/01/11 Javascript
JQuery右键菜单插件ContextMenu使用指南
2014/12/19 Javascript
分享我的jquery实现下拉菜单心的
2015/11/29 Javascript
jQuery使用模式窗口实现在主页面和子页面中互相传值的方法
2016/03/01 Javascript
JS实现添加,替换,删除节点元素的方法
2016/06/30 Javascript
基于JavaScript实现带缩略图的轮播效果
2017/01/12 Javascript
利用jsonp与代理服务器方案解决跨域问题
2017/09/14 Javascript
JS实现键值对遍历json数组功能示例
2018/05/30 Javascript
[02:46]完美世界DOTA2联赛PWL DAY4集锦
2020/11/03 DOTA
举例讲解Python设计模式编程中对抽象工厂模式的运用
2016/03/02 Python
django上传图片并生成缩略图方法示例
2017/12/11 Python
Django处理文件上传File Uploads的实例
2018/05/28 Python
Python 进程之间共享数据(全局变量)的方法
2019/07/16 Python
Python 转换RGB颜色值的示例代码
2019/10/13 Python
Python 限定函数参数的类型及默认值方式
2019/12/24 Python
浅谈tensorflow之内存暴涨问题
2020/02/05 Python
PyQt使用QPropertyAnimation开发简单动画
2020/04/02 Python
使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示
2020/05/16 Python
Django model.py表单设置默认值允许为空的操作
2020/05/19 Python
深入了解canvas在移动端绘制模糊的问题解决
2019/04/30 HTML / CSS
HTML5超炫酷粒子效果的进度条的实现示例
2019/08/23 HTML / CSS
Bootstrap File Input文件上传组件
2020/12/01 HTML / CSS
芬兰汽车配件商店:Autonvaraosat24
2017/01/30 全球购物
什么是makefile? 如何编写makefile?
2013/01/02 面试题
文职个人求职信范文
2013/09/23 职场文书
预备党员期盼十八届四中全会召开思想汇报
2014/10/17 职场文书
幼师求职自荐信
2015/03/26 职场文书
何时使用Map来代替普通的JS对象
2021/04/29 Javascript
Python如何将list中的string转换为int
2022/07/15 Ruby
CentOS7设置ssh服务以及端口修改方式
2022/12/24 Servers
html原生table实现合并单元格以及合并表头的示例代码
2023/05/07 HTML / CSS