Python __str__() 方法
2023-09-11 14:14:44 时间
class Cat:
"""定义一个猫类"""
def __init__(self, new_name, new_age):
"""在创建完对象之后 会自动调用, 它完成对象的初始化的功能"""
# self.name = "汤姆"
# self.age = 20
self.name = new_name
self.age = new_age # 它是一个对象中的属性,在对象中存储,即只要这个对象还存在,那么这个变量就可以使用
# num = 100 # 它是一个局部变量,当这个函数执行完之后,这个变量的空间就没有了,因此其他方法不能使用这个变量
def __str__(self):
"""返回一个对象的描述信息"""
# print(num)
return "名字是:%s , 年龄是:%d" % (self.name, self.age)
def eat(self):
print("%s在吃鱼...." % self.name)
def drink(self):
print("%s在喝可乐..." % self.name)
def introduce(self):
# print("名字是:%s, 年龄是:%d" % (汤姆的名字, 汤姆的年龄))
# print("名字是:%s, 年龄是:%d" % (tom.name, tom.age))
print("名字是:%s, 年龄是:%d" % (self.name, self.age))
# 创建了一个对象
tom = Cat("汤姆", 30)
print(tom)
总结:
- 在python中方法名如果是
__xxxx__()
的,那么就有特殊的功能,因此叫做“魔法”方法 - 当使用print输出对象的时候,只要自己定义了
__str__(self)
方法,那么就会打印从在这个方法中return的数据 __str__
方法需要返回一个字符串,当做这个对象的描写
相关文章
- python魔法方法之__setattr__()/__setattr__,__delattr__,__getattr__
- python 保存图片_用Python从视频中提取每一帧的图片
- 【Python】ValueError: unsupported pickle protocol: 5解决方案/同一个项目 python环境尽量保持一致
- 详解Python中的__new__、__init__、__call__三个特殊方法
- 服务器文档下载zip格式 SQL Server SQL分页查询 C#过滤html标签 EF 延时加载与死锁 在JS方法中返回多个值的三种方法(转载) IEnumerable,ICollection,IList接口问题 不吹不擂,你想要的Python面试都在这里了【315+道题】 基于mvc三层架构和ajax技术实现最简单的文件上传 事件管理
- Python__getattr__、__setattr__、__delattr__、__getitem__、__setitem__、__getattribute__方法的理解
- Python PIL(图像处理库)使用方法
- python中的__call__()方法
- C++、C++-OpenCV、Python、Python-Numpy、MATLAB的除法取余(余数)方法总结
- 157 python网络编程 - 多进程服务器
- 手把手|如何用Python绘制JS地图?
- 如何将 Debian Linux 中的默认的 Python 版本切换为替代版本
- 《Python面向对象编程指南》——第1部分 用特殊方法实现Python风格的类 第1章 __init__()方法 1.1 隐式的基类——object
- 《Python面向对象编程指南》——1.6 在每个子类中实现__init()__方法
- 《Python面向对象编程指南》——2.2 __format__()方法
- 《趣学Python——教孩子学编程》——1.4 保存Python程序
- Python数据处理Tips机器学习中文数据8种常用处理方法
- 『 迷你教程 』Python的Classes类应用在Keras方法详解
- 基于Python的租房数据分析和房屋租赁爬虫 | 项目案例 | 大学生计算机专业毕业 | 毕业设计
- 华为OD机试 - 寻找目标字符串(Python) | 机试题+算法思路+考点+代码解析 【2023】
- python中类继承问题中__init__()方法重写注意事项
- Python 常见问题 之 python 安装包下载安装速度慢 的 快速解决方法(之一)
- [Python] 字典操作及方法总结