1.1 KiB
1.1 KiB
str 和 repr 的区别
原文:https://www.pythoncentral.io/the-difference-between-str-and-repr/
str 和 repr 在 Python 中的用法非常相似,但它们不可互换。str 是一个内置函数,用于计算对象的非正式字符串表示形式,而 repr 必须用于计算对象的正式字符串表示形式。非正式和正式表述之间的明显差异与引号有很大关系。看看下面的例子: 【python】 x = 6 repr(x) ‘6’ str(x) ‘6’
y= '一个字符串' repr(y) y= '一个字符串' " str(y) y= '一个字符串'
[/python] 你可以在上面的例子中看到第一个例子(x)的输出是相同的,但是当你使用 repr 和 str 字符串而不是数字时,会有明显的区别。使用 repr 返回单引号和双引号内的输出,而 str 返回的输出与字符串声明时完全相同(在单引号内)。引号(以及 repr 和 str)很重要,因为非正式表示不能作为 eval 的参数调用,否则返回值就不是有效的 string 对象。如果需要调用输出作为 eval 的参数,请确保使用 repr 而不是 str。