我有一个程序可以打印出这样的数组中的字符串:
for x in strings
print x,
哪个工作正常,字符串全部打印在我想要的同一行上,但是我还必须在新行上打印出不属于数组的字符串。像这样:
for x in strings:
print x,
print second_name
最终在同一行上打印。我想让second_name在换行符上打印,我该怎么做?
答案 0 :(得分:7)
使用换行符\n
:
print '\n' + second_name
答案 1 :(得分:4)
答案 2 :(得分:0)
最直接的解决方案是,如果您在循环中使用“print”而没有最终换行符,请在此循环后添加;所以代码看起来像
for x in strings:
print x,
print ## this terminates the first output line
print second_name
根据其概念,这是印刷“API”的最恰当用法。
OTOH 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)
通常更快,更清晰易读。