如何在 Python 中自定义打印类实例的输出?
打印时自定义类实例表示
尝试打印类的实例时,您可能会遇到默认表示,例如内存地址。要自定义类实例的打印外观,请深入研究 __str__ 和 __repr__ 的概念。
__str__ 方法
通过在类中定义 __str__ 方法,您可以可以控制打印时实例的表示方式。此方法应返回一个包含所需显示文本的字符串。例如:
>>> class Test: >>> def __init__(self): >>> self.a = 'foo' >>> def __str__(self): >>> return f"Test with a: {self.a}"
现在,在打印此类的实例时,您将获得自定义字符串表示形式:
>>> t = Test() >>> t Test with a: foo >>> print(t) Test with a: foo
__repr__ 方法
定义后的 __repr__ 方法在使用 repr() 函数打印时优先于 __str__或在交互式提示中。它旨在提供更详细的表示,适合调试或重建。如果您定义 __repr__ 而不使用 __str__,它也将作为打印表示。
例如:
>>> class Test: >>> def __init__(self): >>> self.a = 'foo' >>> def __repr__(self): >>> return f"Test(a={self.a})"
打印时:
>>> t = Test() >>> t Test(a='foo') >>> repr(t) "Test(a='foo')"
总结:
要自定义类实例的打印表示,请定义一个__str__ 方法用于所需的显示文本,或 __repr__ 方法用于详细表示。如果两者都定义了,__str__ 用于打印,而 __repr__ 用于 repr() 函数。
以上是如何在 Python 中自定义打印类实例的输出?的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Linux终端中查看Python版本时遇到权限问题的解决方法当你在Linux终端中尝试查看Python的版本时,输入python...

使用FiddlerEverywhere进行中间人读取时如何避免被检测到当你使用FiddlerEverywhere...

在使用Python的pandas库时,如何在两个结构不同的DataFrame之间进行整列复制是一个常见的问题。假设我们有两个Dat...

Uvicorn是如何持续监听HTTP请求的?Uvicorn是一个基于ASGI的轻量级Web服务器,其核心功能之一便是监听HTTP请求并进�...

如何在10小时内教计算机小白编程基础?如果你只有10个小时来教计算机小白一些编程知识,你会选择教些什么�...

攻克Investing.com的反爬虫策略许多人尝试爬取Investing.com(https://cn.investing.com/news/latest-news)的新闻数据时,常常�...
