将空字典转换为空字符串

mr_*_*thi 5 python string dictionary

>>> d = {}
>>> s = str(d)
>>> print s
{}
Run Code Online (Sandbox Code Playgroud)

我需要一个空字符串.

zan*_*ngw 15

您可以使用如下最短的方式False执行此操作,因为空字典是,并通过布尔运算符执行.

>>> d = {}
>>> str(d or '')
''
Run Code Online (Sandbox Code Playgroud)

或者没有 str

>>> d = {}
>>> d or ''
''
Run Code Online (Sandbox Code Playgroud)

如果d不是空字典,请将其转换为字符串str()

>>> d['f'] = 12
>>> str(d or '')
"{'f': 12}"
Run Code Online (Sandbox Code Playgroud)


Kev*_*uan 8

False当您尝试将其转换为bool对象时,空的dict 对象.但如果有什么内容,那就是True.像空列表,空字符串,空集和其他对象:

>>> d = {}
>>> d
{}
>>> bool(d)
False
>>> d['foo'] = 'bar' 
>>> bool(d)
True
Run Code Online (Sandbox Code Playgroud)

这很简单:

>>> s = str(d) if d else ''
>>> s
"{'foo': 'bar'}"
>>> d = {}
>>> s = str(d) if d else ''
>>> s
''
Run Code Online (Sandbox Code Playgroud)

或者只是if not d: s = ''当你s在dict中有某些东西时你不需要成为dict的字符串.