为什么在我打印逗号后,逗号分隔符会返回一个逗号?

时间:2019-06-23 23:54:01

标签: python python-3.x string variables separator

所有评估完成后,我尝试打印文本:'此列表包含x个数字。 我试图同时使用'+'和','从变量中分离字符串,问题是当我尝试使用'+'作为分隔符时,它会显示一条消息:SyntaxError: invalid syntax。 另外,如果我尝试使用','作为分隔符,则会在打印的消息末尾得到另一个','。 我希望此“,”仅在代码中分开,我不希望它显示在打印的消息中。

我试图更换两个分隔符,也试图在Google上寻找答案。这是我的第三天学习课程,所以我只是不知道该如何搜索这类信息。我发现的所有信息都无法说明我应该如何解决该问题。

print('Number of elements: ', *(colection), sep = ', ')

现在的消息是什么样的?

Numbers in the list: , 1, 2, 3

我希望它具有最终外观:

Numbers in the list: 1, 2, 3

2 个答案:

答案 0 :(得分:2)

使用分隔符进行打印时,打印的每个元素(包括初始标签行)都被分隔。

假设colection是一个数字列表,您可以只使用两次打印并在第一行上取消换行:

colection = [1,2,3]
print('Números da coleção: ',end='')
print(*colection,sep=', ')

输出:

Números da coleção: 1, 2, 3

答案 1 :(得分:1)

展开print('Number of elements: ', *(colection), sep = ', ')时,实际上评估的是print('Number of elements: ', 1, 2, 3, sep = ', ')

这意味着您有4个元素和3个逗号。逗号之一在第一个字符串和1之间。

我认为您想要的是不使用print参数,而是使用', '.join(colection),例如:

print('Number of elements: ', ', '.join([str(i) for i in colection]))