8

我使用下划线来表示未知单词的长度。如何只打印下划线而没有代表列表的括号?

基本上,如果我有一个表单列表['_', '_', '_', '_'],我想打印下划线而不用列表语法打印它们"_ _ _ _"

4

3 回答 3

37

这对你有用吗

>>> my_dashes = ['_', '_', '_', '_']
>>> print ''.join(my_dashes)
____
>>> print ' '.join(my_dashes)
_ _ _ _
于 2012-10-26T21:51:36.930 回答
1
In [1]: my_dashes = ['_', '_', '_', '_']

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

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

于 2012-10-26T22:07:15.230 回答
1

前面提到的join解决方案(如下一行)是一个合理的解决方案:

print ''.join(['_', '_', '_', '_'])
____

但还要注意,您可以使用它reduce()来完成这项工作:

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

之后import operator可以说:

print reduce(operator.add, ['_', '_', '_', '_'])
____
于 2012-10-26T22:26:17.510 回答