【发布时间】:2012-06-08 19:06:15
【问题描述】:
我有一个想要漂亮打印的列表,其中包含空列表以及带有字符串成员的列表。问题是包含字符串的列表用双引号打印:
>>>str(['a'])
“['a']”
但是一个空列表用单引号打印:
>>> str([])
'[]'
有没有办法总是强制打印带双引号的字符串?
【问题讨论】:
我有一个想要漂亮打印的列表,其中包含空列表以及带有字符串成员的列表。问题是包含字符串的列表用双引号打印:
>>>str(['a'])
“['a']”
但是一个空列表用单引号打印:
>>> str([])
'[]'
有没有办法总是强制打印带双引号的字符串?
【问题讨论】:
这取决于正在打印的对象的表示;如果要打印的字符串包含\" 字符,则将使用单引号;如果字符串包含\' 字符,则将使用双引号。
【讨论】:
使用自定义字符串格式:
print '"{}"'.format(str([]))
打印
"[]"
不过,这不会影响嵌套在容器中的字符串:
print '"{}"'.format(str(["a"]))
打印
"['a']"
【讨论】: