doubleyong
管理员
管理员
  • 最后登录2025-04-01
  • 发帖数1197
  • 最爱沙发
  • 喜欢达人
  • 原创写手
  • 社区居民
  • 忠实会员
阅读:6987回复:0

Python 3.x下消除print()自动换行

楼主#
更多 发布于:2017-04-11 15:57
 Python 2.x下的print语句在输出字符串之后会默认换行,如果不希望换行,只要在语句最后加一个“,”即可。但是在Python 3.x下,print()变成内置函数,加“,”的老方法就行不通了。


        查询Python的Library Reference>Built-in Functions,找到如下条目:


        “print([object, ...], *, sep=' ', end='\n', file=sys.stdout)
其中,sep=''和end='\n'均是print()的关键参数,sep的默认值为空,end默认值为换行符,这就是print()在输出后默认换行的原因。相应的,解决办法就是对end赋值:print(something, something,.., end=''),使end值为空,这个换行就消除了。

    如下示例(输出一个99乘法表):
 

for i in range(1,9):
    for j in range(1,i+1):
        print("%d*%d=%d" % (i,j,i*j),end="    ")
        # print(i,"*",j,"=",i*j,end="    ")
        # print 方法不换行的方法 , 给end设置一个值,在没有设置时,默认给的一个换行符
    print("")


参考:http://wpp9977777.blog.163.com/blog/static/46251007201192905622402/
知识需要管理,知识需要分享
游客


返回顶部

公众号

公众号