python中如何讓輸出不換行
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,文本會立即刷新到文件中。
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
用Python的Tornado框架結合memcached頁面改善博客性能
這篇文章主要介紹了用Python的Tornado框架結合memcached頁面改善vLog性能,主要使用到了緩存來提升性能,需要的朋友可以參考下2015-04-04解決Django migrate No changes detected 不能創(chuàng)建表的問題
今天小編就為大家分享一篇解決Django migrate No changes detected 不能創(chuàng)建表的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05使用Python如何測試InnoDB與MyISAM的讀寫性能
網上有很多評論myisam和innodb讀寫性能對比,所以下面這篇文章主要給大家介紹了關于使用Python如何測試InnoDB與MyISAM讀寫性能的相關資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2018-09-09