首页 > 编程语言 >python __repr__函数和__str__函数

python __repr__函数和__str__函数

时间:2024-09-06 15:53:20浏览次数:5  
标签:__ 函数 python self repr ts str name

__repr__函数和__str__函数 都是类似的用于 显示类对象的作用。

class MyClass:
    def __init__(self, name):
        self.name = name

    def __repr__(self):   # __str__(self)
        return self.name

result = MyClass("repr/str魔法函数")
print("MyClas result:", result)   # 输出:repr/str魔法函数

两者的区别是:

class MyClass:
    def __init__(self, name):
        self.name = name

    def __str__(self):
        return self.name

>>> ts = MyClass("str魔法函数")  # 定义了 __str__(self)
>>> ts   # 在终端中直接 将变量 ts 回车输出,输出内容是 一个 类 属性,而不是输出 __str__ 中的定义内容
<__main__.MyClass at 0x7fa91c314e50>

>>> print(ts)  # 用print 打印的话会返回 __repr__() 或 __str__() 中的返回值
str魔法函数
class MyClass:
    def __init__(self, name):
        self.name = name

    def __repr__(self):
        return self.name

>>> ts = MyClass("repr魔法函数")  # 定义了 __repr__(self)
>>> ts   # 在终端中直接 将变量 ts 回车输出,将直接输出 __repr__中的定义内容
repr魔法函数

>>> print(ts)  # 用print 打印的话会返回 __repr__() 或 __str__() 中的返回值
repr魔法函数

标签:__,函数,python,self,repr,ts,str,name
From: https://www.cnblogs.com/lanjianhua/p/18400393

相关文章

  • 视频监控管理平台LntonAIServer视频智能分析噪声检测应用场景
    在视频监控系统中,噪声问题常常影响到视频画面的清晰度和可用性。噪声可能由多种因素引起,包括但不限于低光环境、摄像机传感器灵敏度过高、编码压缩失真等。LntonAIServer通过引入噪声检测功能,旨在帮助用户及时发现并解决视频流中的噪声问题,确保视频监控系统的稳定性和可靠性。应用......
  • 【C++】简单易懂的vector迭代器
    一、迭代器的本质vector的迭代器本质上就是一个被封装的指针。迭代器的用法和指针的用法十分相似,就是一个像指针的假指针,我们不妨把迭代器看作一个伪指针。二、迭代器的使用句式(可以看到迭代器和指针很像):迭代器有四种:1、正向迭代器:容器名<类型>::iterator迭代器名2、常......
  • Qoj 9111 Zayin ans String / ABC 356 E
    Qoj9111ZayinansString/ABC356E谨以此帖记录一个有意思的Trick题意给了一个长度为\(n\)的目标串\(s\)和\(m\)个模式串每个模式串有一个价值\(v\)要求从\(s\)中选出一个子序列\(t\),定义\(t\)的价值为他的所有子串的价值和(若该子串没出现在模式串中,那么......
  • pdf怎么去水印?5个实用去水印方法新手必看(保姆级攻略)
    pdf怎么去水印?在日常的办公工作生活中,我们常常需要使用PDF文件。pdf格式文件非常流行,因为它兼具稳定性和安全性。但是,有时我们从网上下载的pdf文件会带有水印,这些水印不仅影响了文件的美观,还影响了别人的阅读体验。那pdf怎么去水印呢?今天小编就来给大家分享5个亲测有效的PDF去......
  • 多线程:线程安全
    线程安全多个线程,同时操作同一个共享资源的时候,可能会出现安全问题。例如:两个人来取钱的案例 publicclasstest{publicstaticvoidmain(String[]args){//1.创建一个账户对象。代表账户人的共享账户。Accountacc=newAccount("ICBC-110",1000......
  • 【AI大模型】AI大模型热门关键词解析与核心概念入门
    关注公众号ai技术星球回复88即可领取技术学习资料目录导航热门AI大模型关键词解析热门AI大模型关键词解析大模型代码语言:javascript复制-"大模型"的是大型的人工智能模型,特别是在深度学习领域中。这些模型因其庞大的参数数量、复杂的网络结构和在多种任务上的......
  • PMP项目管理怎么备考
    PMP备考资料免费领取PMP(项目管理专业人士)认证考试是由美国项目管理协会(PMI)提供的,它是对项目管理知识、技能和工具的全面测试。备考PMP考试需要系统的准备和策略,以下是一些建议帮助您备考:1.了解考试大纲和结构考试内容:PMP考试基于PMI发布的《项目管理知识体系指南》(PMBOK®指南)。题......
  • python 魔法函数
    概述魔法函数(MagicMethods),是Python的一种高级语法,允许在类中自定义函数(函数名格式一般为__xx__),并绑定到类的特殊方法中。比如在类A中自定义__str__()函数,则在调用str(A())时,会自动调用__str__()函数,并返回相应的结果。在我们平时的使用中,可能经常使用__init__函数(构造函数)和__d......
  • pdf怎么删除其中一页?这5个pdf编辑方法新手都在用,建议收藏
    pdf怎么删除其中一页?在日常的工作和学习生活中,我们经常会遇到需要处理PDF文件的情况。有时候,我们在处理PDF文件时,发现某些页面内容不再需要,想从PDF中删除特定的页面。然而,很多小伙伴对PDF的编辑和修改并不熟悉,所以不知道怎么操作。今天小编就将为您分享5个超实用方法,帮助您轻松......
  • java for循环倒序输出
    在Java中,如果你想使用for循环来实现倒序输出(比如倒序输出一个数组或集合中的元素,或者仅仅是从一个数字倒序输出到另一个数字),有几种方法可以实现。下面是一些常见的示例:示例1:倒序输出数组中的元素假设你有一个整数数组,并希望使用for循环来倒序输出数组中的每个元素。int[]numbers......