我有一个元组。
tst = ([['name', u'bob-21'], ['name', u'john-28']], True)
我想把它转换为字符串..
print tst2
"([['name', u'bob-21'], ['name', u'john-28']], True)"
这样做的好方法是什么?
谢谢!
答案 0 :(得分:16)
tst2 = str(tst)
E.g:
>>> tst = ([['name', u'bob-21'], ['name', u'john-28']], True)
>>> tst2 = str(tst)
>>> print tst2
([['name', u'bob-21'], ['name', u'john-28']], True)
>>> repr(tst2)
'"([[\'name\', u\'bob-21\'], [\'name\', u\'john-28\']], True)"'
答案 1 :(得分:4)
虽然我喜欢Adam对str()
的建议,但我会倾向于repr()
,因为你明确地寻找一个类似python语法的对象表示。判断help(str)
,其元组的字符串转换最终可能会在将来的版本中以不同的方式定义。
class str(basestring)
| str(object) -> string
|
| Return a nice string representation of the object.
| If the argument is a string, the return value is the same object.
...
与help(repr)
:
repr(...)
repr(object) -> string
Return the canonical string representation of the object.
For most object types, eval(repr(object)) == object.
在今天的实践和环境中,两者之间几乎没有什么区别,因此请使用最能描述您需求的内容 - 您可以反馈给eval()
,或用于消费用户的内容。
>>> str(tst)
"([['name', u'bob-21'], ['name', u'john-28']], True)"
>>> repr(tst)
"([['name', u'bob-21'], ['name', u'john-28']], True)"