Python 的内置函数 repr() 用于获取对象的"官方"字符串表示形式,通常是可以被 Python 解释器直接执行的代码形式。这个函数与 str() 函数不同,后者返回的是对象的"非正式"或可读性更好的字符串表示。
功能特点
与 str() 的区别
使用示例
# 基本数据类型
print(repr(123)) # '123'
print(repr('abc')) # "'abc'"
# 容器类型
print(repr([1, 2, 3])) # '[1, 2, 3]'
# 自定义类
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
def __repr__(self):
return f"Point({self.x}, {self.y})"
p = Point(3, 4)
print(repr(p)) # Point(3, 4)
最佳实践
- 自定义类时应该总是实现
__repr__方法 __repr__应该返回一个包含足够信息的字符串,能够重建对象- 理想情况下,
eval(repr(obj)) == obj应该为真
应用场景
- 调试时快速查看对象状态
- 日志记录中需要精确的对象表示
- 需要序列化/反序列化对象的场合
- 实现 REPL(交互式解释器)环境时
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦