Python:避免使用打印命令的新行

我今天开始编程,并与Python有这个问题。 这是非常愚蠢的,但我不知道如何做到这一点。 当我使用打印命令,它打印任何我想要的,然后去不同的行。 例如:

print "this should be"; print "on the same line" 

应该返回:

这应该是在同一行

而是返回:

这应该是
在同一条线上

更确切地说,我试图创build一个程序, if它告诉我一个数字是否是2

 def test2(x): if x == 2: print "Yeah bro, that's tottaly a two" else: print "Nope, that is not a two. That is a (x)" 

但它不能识别最后一个(x)作为input的值,而是恰好打印出“(x)”(带括号的字母)。 为了使它工作,我必须写:

 print "Nope, that is not a two. That is a"; print (x) 

而且,如果我inputtest2(3)给出:

不,那不是两个,那是一个
3

所以,要么我需要让Python在打印行内识别我的(x)作为数字; 或打印两个单独的东西,但在同一行。 预先感谢,并为这样一个愚蠢的问题抱歉。

重要说明 :我正在使用版本2.5.4

另一个注意事项:如果我把print "Thing" , print "Thing2"它说:“语法错误”在第二次打印。

您可以使用尾随逗号来避免打印换行符:

 print "this should be", print "on the same line" 

不过,您不需要这样简单地打印一个variables:

 print "Nope, that is not a two. That is a", x 

注意:从Python 3.x及更高版本开始

 print("Nope, that is not a two. That is a", x) 

Python 2.x中,只需在print语句的最后添加一个。 如果要避免在项目之间print放置的空白,请使用sys.stdout.write

 import sys sys.stdout.write('hi there') sys.stdout.write('Bob here.') 

收益率:

 hi thereBob here. 

请注意,两个string之间不存在换行符空格

Python 3.x中 ,使用它的print()函数 ,你可以说

 print('this is a string', end="") print(' and this is on the same line') 

并得到:

 this is a string and this is on the same line 

还有一个叫做sep的参数,你可以用Python 3.x打印来设置,以控制相邻string将如何分离(或不取决于分配给sep的值)

例如,

Python 2.x

 print 'hi', 'there' 

 hi there 

Python 3.x

 print('hi', 'there', sep='') 

 hithere 

如果你使用的是Python 2.5,这不会起作用,但是对于使用2.6或2.7的人来说,尝试一下

 from __future__ import print_function print("abcd", end='') print("efg") 

结果是

 abcdefg 

对于那些使用3.x,这已经内置。

你只需要做:

 print 'lakjdfljsdf', # trailing comma 

但在:

 print 'lkajdlfjasd', 'ljkadfljasf' 

有隐含的空白(即' ' )。

您也可以select:

 import sys sys.stdout.write('some data here without a new line') 

利用尾随逗号来防止出现新行:

 print "this should be"; print "on the same line" 

应该:

 print "this should be", "on the same line" 

另外,您可以通过以下方式将传递的variables附加到所需string的末尾:

 print "Nope, that is not a two. That is a", x 

你也可以使用:

 print "Nope, that is not a two. That is a %d" % x #assuming x is always an int 

您可以使用%运算符(模数)访问有关string格式的其他文档 。