Python中repr函数的字符串格式化方法
发布时间:2023-12-14 21:11:06
repr() 函数在 Python 中用于生成对象的字符串表示形式,它返回一个包含对象类型名称和对象的内部表示的字符串。通常情况下,repr() 返回的字符串可以用 eval() 函数重新生成该对象。
repr() 的字符串格式化方法可以使用 % 运算符或者 str.format() 方法,下面是一些示例:
1. 使用 % 运算符进行字符串格式化:
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
def __repr__(self):
return 'Point(%r, %r)' % (self.x, self.y)
p = Point(1, 2)
print(repr(p)) # 输出: Point(1, 2)
2. 使用 str.format() 方法进行字符串格式化:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __repr__(self):
return 'Person(name={}, age={})'.format(self.name, self.age)
p = Person('Alice', 25)
print(repr(p)) # 输出: Person(name=Alice, age=25)
3. 对于复杂的格式化需求,你可以使用 f-strings(Python 3.6+):
class Rectangle:
def __init__(self, width, height):
self.width = width
self.height = height
def __repr__(self):
return f'Rectangle(width={self.width}, height={self.height})'
r = Rectangle(5, 10)
print(repr(r)) # 输出: Rectangle(width=5, height=10)
这些例子展示了如何使用 % 运算符、str.format() 方法和 f-strings 对 repr() 函数进行字符串格式化。你可以根据自己的需求选择适合的格式化方法。
