假设我有以下列表:
temp = ['Ok', 'Whoa. Robot?']
如何得到一个看起来像这样的字符串
"1) 'Ok', 2) 'Whoa. Robot?'"
我尝试这样做是为了列表理解。我显然可以使用以下方式加入他们:
" ".join(temp)
我可以用一种相当丑陋的方式在循环中完成:
mystring = ""
temp = ['Ok', 'Whoa. Robot?']
for i in range(len(temp)):
mystring += str(i) + ") " + temp[i] + " "
是否有一种 pythonic 方法可以通过列表推导一步完成?
请您参考如下方法:
mystring = ', '.join(["{}) {!r}".format(i, s) for i, s in enumerate(temp, 1)])
{!r} 转换产生 repr()字符串的表示形式,因此您可以在各部分周围使用引号,但请注意,引号可能会根据字符串的内容而变化,或者换句话说,如果它包含引号本身。
