python-不换行输出+print()完整参数详解

本文详细介绍了Python中print()函数的高级用法,包括如何通过指定end参数控制输出是否换行,以及如何使用sep参数自定义多个输出对象间的分隔符。此外,还介绍了如何利用file参数将输出重定向至文件,以及flush参数的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0.摘要

由于特殊的输出要求,我们在使用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='\n\n')
print(b)
print(c,end='!')

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

 

2.print()函数

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

print()函数的形式是:

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

  • objects -- 复数,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。
  • sep -- 用来间隔多个对象,默认值是一个空格。
  • end -- 用来设定以什么结尾。默认值是换行符 \n,我们可以换成其他字符串。
  • 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参数就可以轻松地将文本写入文件,实现长期储存。

zen = '''Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
'''

with open('./Zen_of_Python.txt','w') as f:
    print(zen,file=f)

flush参数控制的是刷新功能。

对于写入文件,如果flush=False,文本会存放在内存中,直到文件关闭,才写入;

如果flush=True,文本会立即刷新到文件中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值