将字符串列表转换为以空格分隔的字符串

9
我使用下划线来表示一个未知单词的长度。如何仅打印下划线而不带方括号,这些方括号表示列表?
基本上,如果我有一个形式为['_', '_', '_', '_']的列表,我想打印下划线,而不是像这样以列表语法打印它们:" _ _ _ _"

这个回答解决了你的问题吗?如何在Python中将列表转换为带有空格的字符串? - mkrieger1
3个回答

38

这对你有用吗?

>>> my_dashes = ['_', '_', '_', '_']
>>> print ''.join(my_dashes)
____
>>> print ' '.join(my_dashes)
_ _ _ _

1
In [1]: my_dashes = ['_', '_', '_', '_']

In [2]: str(my_dashes).translate(None, '[],\'')
Out[2]: '_ _ _ _'

在 deletechars 字符串中添加一个额外的空格,以将破折号放在一起。

1
之前提到的join解决方案(如下行所示)是一个合理的解决方案:
print ''.join(['_', '_', '_', '_'])
____

但是请注意,您也可以使用reduce()来完成这项工作:

print reduce(lambda x,y: x+y, ['_', '_', '_', '_'])
____

在导入operator之后,您可以这样说:

print reduce(operator.add, ['_', '_', '_', '_'])
____

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接