如何在python中将列表转换为带引号的字符串

时间:2013-04-17 08:12:26

标签: python string type-conversion

我有一个列表,并希望它作为带引号的字符串 mylist = [1,2,3]

要求O / P为 myString = "'1','2','3'"

我试过mystring = '\',\''.join(mylist)

它给了我结果

mystring = "1','2','3"

缺少第一个和最后一个引号(')

5 个答案:

答案 0 :(得分:17)

这似乎是到目前为止唯一不是黑客攻击的解决方案......

>>> mylist = [1,2,3]
>>> ','.join("'{0}'".format(x) for x in mylist)
"'1','2','3'"

这也可以更紧凑地写成:

>>> ','.join(map("'{0}'".format, mylist))
"'1','2','3'"

答案 1 :(得分:2)

作为一个简单的黑客,你为什么不..

mystring = "'%s'" %"','".join(mylist)

将命令的结果包装在引号中?

答案 2 :(得分:1)

你也可以这样做

mylist = [1, 2, 3]
mystring = str(map(str, mylist)).strip("[]")

答案 3 :(得分:1)

>>> mylist = [1,2,3]
>>> str([str(x) for x in mylist]).strip("[]")
"'1','2','3'"

答案 4 :(得分:0)

或常规repr

>>> l=[1,2,3]
>>> ','.join(repr(str(i)) for i in l)
"'1','2','3'"
>>>