如果我的输入文字是
a
b
c
d
e
f
g
我希望我的输出文本是:(带双引号)
"a b c d e f g"
在此步骤之后我该去哪里:
" ".join([a.strip() for a in b.split("\n") if a])
答案 0 :(得分:6)
您已成功构建了不带引号的字符串。所以你需要添加双引号。在Python中有几种不同的方法:
>>> my_str = " ".join([a.strip() for a in b.split("\n") if a])
>>> print '"' + my_str + '"' #Use single quotes to surround the double quotes
"a b c d e f g"
>>> print "\"" + my_str + "\"" #Escape the double quotes
"a b c d e f g"
>>> print '"%s"'%my_str #Use string formatting
"a b c d e f g"
这些选项中的任何一个都是有效且惯用的Python。我可能会自己选择第一个选项,因为它简短明了
答案 1 :(得分:3)
'"%s"' % " ".join([a.strip() for a in s.split("\n") if a])