【发布时间】:2015-12-01 05:22:44
【问题描述】:
假设我在 python 中有这个列表
A = ["(a,1)", "(b,2)", "(c,3)", "(d,4)"]
那么我怎样才能以以下格式打印出来:
(a,1), (b,2), (c,3), (d,4)
使用一行,最好不使用for循环 提前致谢
【问题讨论】:
-
有什么尝试吗?你知道
ast.literal_eval?
假设我在 python 中有这个列表
A = ["(a,1)", "(b,2)", "(c,3)", "(d,4)"]
那么我怎样才能以以下格式打印出来:
(a,1), (b,2), (c,3), (d,4)
使用一行,最好不使用for循环 提前致谢
【问题讨论】:
ast.literal_eval?
当 A 是 str 的列表时:
print(', '.join(A))
或更笼统地说:
print(', '.join(map(str, A)))
【讨论】:
在您的情况下,下面的代码将起作用
print(', '.join(A))
【讨论】:
你也可以使用正则表达式:
>>> A = ["(a,1)", "(b,2)", "(c,3)", "(d,4)"]
>>> import re
>>> re.sub(r'[\[\]\"]', r"",",".join(A))
'(a,1),(b,2),(c,3),(d,4)'
【讨论】: