新lin上的Python打印语句

2024-04-16 18:25:25 发布

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

我有一个程序可以从这样的数组中打印出字符串:

for x in strings
    print x,

这很好,字符串都在同一行上打印,这是我想要的,但是我还必须打印出一个字符串,它不是数组的一部分。像这样:

for x in strings:
    print x,
print second_name

最后所有的打印都在同一行。不过,我想把第二个名字印在一个换行符上,我该怎么做?


Tags: 字符串namein程序for数组名字行上
3条回答

最直接的解决方案是,如果在一个周期中使用“print”而不使用最后的换行符,那么在这个周期之后添加它;这样代码看起来就像

for x in strings:
    print x,
print ## this terminates the first output line
print second_name

根据其概念,这是打印“API”最恰当的用法。

另外,K DawG的答案在另一方面本质上是相同的,将默认的结尾'\n'放在下一个“print”的开头,stdout的流特性使这两个变体的结果相同。

注意,你的构造不能直接移植到Python3。Python2的print在每个参数前添加一个空格,除非输出不在行的开头。Python3的分隔符应用于参数之间,但不在一行中的第一个参数之前。因此,这种方式(从BASIC克隆)不是透视图,应该用自己的方式替换,例如:

out = ''
for x in strings:
out += ' ' + x
print(out[1:])
print(second_name)

但是," ".join(strings)通常读起来更快、更清晰。

我个人认为最好在这里使用^{}

print " ".join(strings)
print second_name

for循环看起来有点过头了。

使用换行符\n

print '\n' + second_name

相关问题 更多 >