假设一个 python 数组“myarray”包含:
mylist = [u'a',u'b',u'c']
我想要一个包含数组中所有元素的字符串,同时保留这样的双引号(注意没有括号,而是括号):
result = "('a','b','c')"
我尝试使用",".join(mylist)
,但它给了我 "a,b,c" 的结果并消除了单引号。
假设一个 python 数组“myarray”包含:
mylist = [u'a',u'b',u'c']
我想要一个包含数组中所有元素的字符串,同时保留这样的双引号(注意没有括号,而是括号):
result = "('a','b','c')"
我尝试使用",".join(mylist)
,但它给了我 "a,b,c" 的结果并消除了单引号。
你非常接近,这就是我会这样做的方式:
result = "('%s')" % "','".join(mylist)
那这个呢:
>>> mylist = [u'a',u'b',u'c']
>>> str(tuple(map(str, mylist)))
"('a', 'b', 'c')"
尝试这个:
result = "({})".format(",".join(["'{}'".format(char) for char in mylist]))
>>> l = [u'a', u'b', u'c']
>>> str(tuple([str(e) for e in l]))
"('a', 'b', 'c')"
调用列表中的str
每个元素会将 Unicode 字符串转换为原始字符串。接下来,调用列表推导的结果将用括号替换方括号。最后,调用它的结果应该返回带有括号中单引号的元素列表。e
l
tuple
str
这是另一个变体:
mylist = [u'a',u'b',u'c']
result = "\"{0}\"".format(tuple(mylist))
print(result)
输出:
"('a', 'b', 'c')"