您好,登錄后才能下訂單哦!
今天在做編程題的時候發現Python的print輸出默認換行輸出,并且輸出后有空格。
題目要求輸出
122
而我的輸出是:
1
2
2
于是我百度查到取消print自動換行的方法:就是在print的值后邊加逗號,例如print x,
果然,不換行了,但是輸出結果仍然不對,要求輸出為122,而我的輸出為1 2 2
于是我繼續百度查方法,發現Python2和Python3的print方法是不同的。Python2的print不用加()可以直接輸出,例如print 'hello world', Python3則需要加括號 print("hello world"),而且Python3的print方法是有參數的,比如sep表示字符串之間的連接符,end表示以什么結尾。如果沒有設置參數默認sep=‘ ',end='\n',因此我把我的代碼改為:
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輸出不換行沒空格的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。