当前位置 : 主页 > 编程语言 > python >

python中如何让输出不换行

来源:互联网 收集:自由互联 发布时间:2023-05-14
目录 python让输出不换行 Python2.x Python3.x python不换行输出+print()完整参数 print()指定结束符 print()函数 总结 python让输出不换行 Python2.x python2.x中输出默认是换行的,为了抑制换行,可以在
目录
  • python让输出不换行
    • Python2.x
    • Python3.x
  • python不换行输出+print()完整参数
    • print()指定结束符
    • print()函数
  • 总结

    python让输出不换行

    Python2.x

    python2.x中输出默认是换行的,为了抑制换行,可以在打印最后加一个逗号

    Python3.x

    到了python3中,print 变成一个函数,这种语法便行不通了。

    我们可以使用  print(x, end="") 

    end="" 可使输出不换行。双引号之间的内容就是结束的内容, 可以是空格,也可以是其他字符,默认为换行

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

    由于特殊的输出要求,我们在使用print()函数时,并不希望输出结束后自动换行。

    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='!')

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

    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,文本会立即刷新到文件中。

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持自由互联。 

    网友评论