这不是不是典型的“如何删除新行或空格”问题...
一般来说,我是python新手。但我知道
print ("test", end="")
print ("test", end="")
对于Python 3和
print "test",
print "test",
对于Python 2
Python 3实现将在Linux和Windows计算机上正确打印;但是,Python 2实现将在基于Windows的计算机上执行时在执行结束时添加一行额外的行(但不适用于Linux,则可以正确打印)。有什么办法可以摆脱这条新线?
我到处搜索,似乎找不到任何人在谈论这个特定问题。这是演示的屏幕截图:
答案 0 :(得分:1)
因此,根据print documentation
标准输出定义为名为stdout的文件对象
我们可能假设python I \ O是系统依赖的,所以这就是我们可以尝试猜测这种情况的解释,甚至认为打印文档指出:
除非打印语句,否则在末尾写一个'\ n'字符 以逗号结尾。
OR 原因是Windows和Linux威胁print
的声明不同(因为print
是Python 2中的一条语句,而function call是Python 3中的一条语句) )。
回到问题,如何摆脱这一行:
我将future语句用于打印功能:
from __future__ import print_function
print('test', end=' ')
print('test', end='')
如果我找到任何合理的解释,我将更新答案(应该在某个地方!)。
答案 1 :(得分:0)
在与一些人交谈并进行了一些研究之后。解决此问题的最直接方法似乎是直接使用:
sys.stdout.write()
代替打印。然后,您可以类似于C / C ++和Java的工作方式格式化输出。