python:使用print命令避免新行

7ivaypg9  于 2021-07-13  发布在  Java
关注(0)|答案(5)|浏览(400)

这个问题在这里已经有答案了

如何在没有换行符或空格的情况下打印(22个答案)
7年前关门了。
我今天就开始编程了,我对python有这个问题。这很蠢,但我不知道怎么做。当我使用print命令时,它会打印我想要的任何内容,然后转到另一行。例如:

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

应返回:
这应该在同一条线上
但结果却是:
这应该是
在同一条线上
更确切地说,我是想用 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) 作为输入值,而是精确打印:“(x)”(带括号的字母)。为了让它工作,我必须写:

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

如果我进去了 test2(3) 这就产生了:
不,那不是2,那是

因此,要么我需要让python将打印行中的(x)识别为数字;或者在同一行上打印两个不同的东西。事先谢谢你,抱歉问了这么愚蠢的问题。
重要提示:我使用的是2.5.4版
另一个提示:如果我把 print "Thing" , print "Thing2" 第二次打印时显示“语法错误”。

ttp71kqs

ttp71kqs1#

在Python3.x中,可以使用 end 对…的争论 print() 用于防止打印换行符的函数:

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

在Python2.x中,可以使用尾随逗号:

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

不过,您不需要简单地打印变量:

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

请注意,后面的逗号仍然会导致在行尾打印一个空格,即它等效于使用 end=" " 在python3中。要同时抑制空格字符,可以使用

from __future__ import print_function

要访问python3打印函数或使用 sys.stdout.write() .

v440hwme

v440hwme2#

在python2.x中 , 在你生命的尽头 print 声明。如果你想避免那个空白 print 在项目之间放置,使用 sys.stdout.write .

import sys

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

产量:

hi thereBob here.

请注意,两个字符串之间没有换行符或空格。
在python3.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 可以在print中使用python3.x设置,以控制相邻字符串的分隔方式(或不取决于指定给 sep )
例如。,
python 2.x版

print 'hi', 'there'

给予

hi there

python 3.x版

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

给予

hithere
igetnqfo

igetnqfo3#

如果您使用的是Python2.5,这将不起作用,但是对于使用2.6或2.7的用户,请尝试

from __future__ import print_function

print("abcd", end='')
print("efg")

结果

abcdefg

对于那些使用3.x的用户来说,这已经是内置的了。

5us2dqdw

5us2dqdw4#

您只需执行以下操作:

print 'lakjdfljsdf', # trailing comma

但是在:

print 'lkajdlfjasd', 'ljkadfljasf'

有隐式空格(即 ' ' ).
您还可以选择:

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

n7taea2i5#

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

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

应该是:

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

此外,您还可以通过以下方式将传递的变量附加到所需字符串的末尾:

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

您可以使用 % 运算符(模)。

相关问题