repr() 对象的可打印表示

最后更新:2026-09-22

repr() 对象的可打印表示

repr() 返回对象的「官方」字符串表示:理想情况下能传给 eval() 重建该对象。

分类内置函数
类型内置函数
Python 版本all

📝 语法

repr(object)

⚙️ 参数

object 必选要取得表示的对象。

返回值:返回对象的字符串表示,尽量可被 eval() 重建;比 str() 更偏调试用途。

▶ 示例

编辑下方代码,点击运行,在输出面板查看结果:

运行结果:

datetime.datetime(2026, 1, 1, 0, 0)
'hello'
更多实战案例即将上线,敬请期待。

❓ 常见问题

Qrepr() 和 str() 有什么区别?
Astr() 是给人看的友好形式(print 默认使用),repr() 是给开发者看的“官方表示”、尽量可被 eval() 重建;如 repr('a') 是 "'a'"(带引号),str('a') 是 a。
Q为什么打印列表时字符串元素带引号?
A因为 print 对容器内的元素使用 repr():print(['a']) 实际显示的是 ["'a'"] 的 repr 形式,方便区分元素类型。
Qrepr 真的能重建对象吗?
A对内置类型基本可以,eval(repr(x)) 能还原;自定义类需自己实现 __repr__ 才有意义,否则默认给对象内存地址。
Qf-string 里怎么用 repr?
A用转换符:f'{x!r}' 等价于 repr(x),调试输出时经常配合 !r 查看对象的真实结构。
Web-Tutorial.com

Web-Tutorial 技术团队

由多位开发者共同维护的编程教程平台。每篇教程由对应领域的开发者编写和审核,确保内容准确可靠。如发现任何问题,欢迎向我们反馈。

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏