今天在作编程题的时候发现Python的print输出默认换行输出,而且输出后有空格。python
题目要求输出编程
122函数
而个人输出是:spa
1.net
2code
2htm
因而我百度查到取消print自动换行的方法:就是在print的值后边加逗号,例如print x,字符串
果真,不换行了,可是输出结果仍然不对,要求输出为122,而个人输出为1 2 2get
因而我继续百度查方法,发现Python2和Python3的print方法是不一样的。Python2的print不用加()能够直接输出,例如print 'hello world', Python3则须要加括号 print("hello world"),并且Python3的print方法是有参数的,好比sep表示字符串之间的链接符,end表示以什么结尾。若是没有设置参数默认sep=‘ ',end='\n',所以我把个人代码改成:it
print (i,end=''),可是我发现编译错误,由于我用的是Python2,跑Python2 的print是没有参数的,同理,若是在Python3中使用print x,这种逗号形式,也是编译错误的。
因而我不知道该怎么办了,继续百度查到了:
from __future__ import print_function
只要在程序前加这个就能够在Python2中使用参数了。最后终于正确输出122
后来,我又发现一种方法就是使用
sys.stdout.write()
我把代码改成:
sys.stdout.write(str(i))
也能正确输出122
以上这篇解决Python print输出不换行没空格的问题就是小编分享给你们的所有内容了,但愿能给你们一个参考,也但愿你们多多支持脚本之家。