使用print()函数显示具有自定义分隔符的列表项

时间:2018-12-23 14:04:00

标签: python python-3.x printing argument-unpacking

有人可以向我解释为什么当我尝试使用星号将未打包的数据传递到打印功能时,可选参数“ end”仅适用于最后一个列表的元素,而其余参数则为默认值(空格)

l = ['a', 'b', 'c']
print(*l, end='-')

我希望使用a-b-c-而不是a b c-

2 个答案:

答案 0 :(得分:0)

根据print() docs

  

将对象打印到文本流文件中,以sep分隔,然后跟随   由end

     

所有非关键字参数都像str()一样转换为字符串,并且   写入流中,以sep分隔,后跟end

sep参数用于控制print的参数之间的分隔符。 end仅控制行终止符。

l = ['a', 'b', 'c']
print(*l, sep='-', end='-')
# a-b-c-

答案 1 :(得分:0)

除了先前的答案,您可能还会发现以下有用的内容:

>>> l = ['a', 'b', 'c']
>>> print('-'.join(l) + '-')
a-b-c-