【发布时间】:2015-02-08 17:11:05
【问题描述】:
我有一个问题,有没有办法“强制”repr() 在字符串周围始终创建单引号?
当我只使用repr()时会发生这种情况
print repr("test")
'test'
print repr("test'")
"test'"
print repr("test\"")
'test"'
print repr("test'\"")
'test\'"'
所以最后一个实际上是我想要的,但我不想总是添加 \\" 来获得单引号。
编辑:我不会将答案标记为已接受,因为正如@martijn-pieters 所指出的,我将repr() 用于它不打算用于的目的。
【问题讨论】:
-
也许this 会帮助你
-
repr()是一个调试工具。为什么您要求它使用不同的引号?作为查看输出的开发人员,您可以很好地区分报价类型。当您粘贴回repr(stringobject)调用的结果时,Python 也可以;您可以通过这种方式重新创建确切的值。这些是repr()的用例。但很明显,您正在将其用于其他用途。几乎可以肯定,最好以不同的方式解决问题,不使用repr()。 -
我尝试使用
repr()在文件中写入列表,然后添加换行符和制表符以在文本文件中对其进行格式化。最后,我想要另一个函数,它使用ast.iteral_eval()从文件中的字符串(不添加换行符和制表符)创建列表。
标签: python escaping quotes repr