Python“print”函数“sep”参数未按预期工作

2024-09-29 17:13:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我在windows10enterprise上使用pythonversion3.7.4

我在Python的print函数,尤其是sep参数方面遇到了一个奇怪的问题

在Python REPL中,当我使用代码print(1, 2, 3, 4, 5, sep='\t')时,我得到正确的输出1 2 3 4 5

但是,当代码尝试如下所示迭代集合时,它总是在新行上显示单个值,而不是显示由制表符分隔的数字

numbers = {1, 2, 3, 4, 5}
for n in numbers:
    print(n, sep='\t')

有人能帮我理解为什么它在一个单独的行上显示数值吗

我附上截图作为参考

Python print function sep parameter

谢谢


Tags: 函数代码infor参数数字replsep
1条回答
网友
1楼 · 发布于 2024-09-29 17:13:56

这是因为您正在迭代集合numbers。循环运行,print()函数会自动在打印出来显示的每个项目的末尾插入一个\n。因此,每个项目都显示在自己的行上

如果您想循环使用示例中的iterable,并用制表符将其分隔,则可以执行以下操作:

for n in numbers:
    print(n, end='\t')

默认情况下,end参数设置为\n

相关问题 更多 >

    热门问题