repr() 返回对象的官方字符串表示,用于调试,能精确还原对象结构,如列表和字符串会显示引号,自定义类可通过 repr 方法实现重建对象的输出,便于开发时查看真实数据类型与内容。

在 Python 中,repr() 函数的作用是返回一个对象的“官方”字符串表示形式,通常用于调试和开发。
返回对象的可读字符串表示
repr() 会尝试生成一个字符串,这个字符串理想情况下可以用来重新创建该对象。也就是说,返回的字符串更精确、更完整,适合开发者查看。
例如:
x = [1, 2, 3] print(repr(x)) # 输出: [1, 2, 3]s = "hello" print(repr(s)) # 输出: 'hello'(带引号)
对比 str(),它更偏向于让用户友好地阅读,而 repr() 更偏向于让程序员看清楚对象的真实结构。
立即学习“Python免费学习笔记(深入)”;
常用于调试场景
当你在交互式解释器中输入变量名时,Python 实际上调用的就是 repr() 来显示结果。
采用HttpClient向服务器端action请求数据,当然调用服务器端方法获取数据并不止这一种。WebService也可以为我们提供所需数据,那么什么是webService呢?,它是一种基于SAOP协议的远程调用标准,通过webservice可以将不同操作系统平台,不同语言,不同技术整合到一起。 实现Android与服务器端数据交互,我们在PC机器java客户端中,需要一些库,比如XFire,Axis2,CXF等等来支持访问WebService,但是这些库并不适合我们资源有限的android手机客户端,
自定义类中可以通过定义 __repr__ 方法来控制输出:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __repr__(self):
return f"Person('{self.name}', {self.age})"p = Person("Alice", 30)
print(repr(p)) # 输出: Person('Alice', 30)
这样做的好处是,输出的字符串可以直接复制到代码中用于重建对象,方便调试。
确保类型信息清晰
repr() 能保留数据类型差异。比如字符串会带上引号,避免歧义。
text = "world" print(str(text)) # world print(repr(text)) # 'world'
这种区别在日志记录或排查问题时特别有用。
基本上就这些。repr 的核心就是提供一个明确、无歧义的对象表示方式。不复杂但容易忽略。










