python中print怎么不换行输出

大家应该知道python中print之后是默认换行的,

那如何我们不想换行,且不想讲输出内容用一个print函数输出时,就需要改变print默认换行的属性,

方法如下:

print('contents', end='!@#$%^&*')

end就表示print将如何结束,默认为end=" "(换行)

栗子:

print("祝各位身体健康")
print("!")
print("祝各位身体健康", end=' ')
print("!")

python3.0 的print 函数有如下的形式:

print([object,...][,seq=' '][,end='
'][,file=sys.stdout])

我们在使用print()函数时,并不希望输出结束后自动换行,因此,我们可以按照下面的方法来做

1.print()指定结束符

print('hello',end='')
print('world')
#result:helloworld

当print()函数,指定end参数为空字符后,print()函数就不再主动添加换行符了。并且,hello和world之间也不存在任何空格。

a = 'first line'
b = 'second line'
c = 'third line'
print(a,end='

')
print(b)
print(c,end='!')

我们可以利用指定结束符的方法,灵活控制换行行数和结尾字符。

2.print()函数

知道了如何实现输出不换行,下面我们来看一下原理。

print()函数的形式是:

print(*objects, sep=' ', end=' ', file=sys.stdout,flush=False)

objects -- 复数,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。

sep -- 用来间隔多个对象,默认值是一个空格。

end -- 用来设定以什么结尾。默认值是换行符 ,我们可以换成其他字符串。

file -- 要写入的文件对象。

flush--是否要强行刷新stream

上文对objects和end已经做了演示,不在赘述。

sep可以帮助我们填充分隔符,比如:

ip_0 = '166'
ip_1 = '111'
ip_2 =  '77'
ip_3 = '201'
print(ip_0,ip_1,ip_2,ip_3,sep='.')
#result:166.111.77.201

file参数,可以指定输出对象,默认是当前的sys.stdout,也就是直接打印出来。

如果我们将对象设置为文件,那么利用file参数就可以轻松地将文本写入文件,实现长期储存。