[英]How to remove the square brackets from a list when it is printed/output
我有一段代码可以完成我需要做的所有事情,现在我使它看起来更好并得到了完善。 打印结果时,我发现语句中的列表在方括号中,并且似乎无法删除它们。
您可以使用map()
将数字转换为字符串,并使用" ".join()
或", ".join()
将它们放在同一字符串中:
mylist = [4, 5]
print(" ".join(map(str, mylist)))
#4 5
print(", ".join(map(str, mylist)))
#4, 5
您还可以利用print()
函数:
mylist = [4, 5]
print(*mylist)
#4 5
print(*mylist, sep=", ")
#4, 5
注意:在Python2中,这是行不通的,因为print
是一个语句,而不是一个函数。 您可以将from __future__ import print_function
放在文件的开头,也可以使用import __builtin__; getattr(__builtin__, 'print')(*mylist)
from __future__ import print_function
import __builtin__; getattr(__builtin__, 'print')(*mylist)
如果print
是一个函数(在Python 3中是默认值),则可以使用*
解压缩列表:
>>> L = [3, 5]
>>> from __future__ import print_function
>>> print(*L)
3 5
您可以将其转换为字符串,而不是直接打印列表:
print(", ".join(LIST))
如果列表中的元素不是字符串,则可以使用repr()或str()将它们转换为字符串:
LIST = [1, "printing", 3.5, { "without": "brackets" }]
print( ", ".join( repr(e) for e in LIST ) )
给出输出:
1, 'printing', 3.5, {'without': 'brackets'}
您可以这样做:
separator = ','
print separator.join(str(element) for element in myList)
为什么不使用for循环一个接一个地显示列表中的元素,而不是像这样一次显示整个列表:
# l - list
for i in range(0, len(l)):
print l[i],
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.