相信很多同學入門python的第一行**都是print('hello world!')
print是初學者最先接觸的python函式,但是很多人可能到現在也不完全清楚它的用法。
print(*objects, sep=』 『, end=』\n』, file=sys.stdout, flush=false)
引數:
objects– 複數,表示可以一次輸出多個物件。輸出多個物件時,需要用 , 分隔。
sep– 用來間隔多個物件,預設值是乙個空格。
end– 用來設定以什麼結尾。預設值是換行符 \n,我們可以換成其他字串。
file– 要寫入的檔案物件。
flush– 輸出是否被快取通常決定於 file,但如果 flush 關鍵字引數為 true,流會被強制重新整理。
除了常用的objects引數,剩下幾個引數大家應該比較陌生吧?下面咱們看看這幾個引數可以玩出什麼花樣?
預設情況下,print 函式會將內容列印輸出到標準輸出流(即 sys.stdout),可以通過file引數自定義輸出流。
with open('data.txt', 'w') as f:
print('hello world!', file=f)
然後工作目錄下就會儲存乙份txt檔案
注意,print輸出的其實有兩行,第二行為空。這是因為當我們在 python 中列印物件呼叫 print(obj) 時候,事實上是呼叫了sys.stdout.write(obj+'\n'),print 將需要的內容列印到控制台,然後追加了乙個換行符。
import sys
sys.stdout.write('hello world!'+'\n')
print('hello world!')
## 上面兩行是等價的
如果不想讓print自動換行,怎麼辦呢?只需要指定end引數為空即可
print('hello world!',end='')
flush這個引數就更有意思了,print() 函式會把內容放到記憶體中,不一定及時重新整理顯示到螢幕中。 使用flush=true之後,會在print結束之後,不管你有沒有達到條件,立即將記憶體中的東西顯示到螢幕上,清空快取。
這樣就可以實現一些裝逼效果滿分的操作了
比如動態loading效果:
再比如打字機效果
同學們學廢了嗎?給了三連可好?
print Hello World 的新玩法
相信很多同學入門python的第一行 都是print hello world print是初學者最先接觸的python函式,但是很多人可能到現在也不完全清楚它的用法。print objects,sep end n file sys.stdout,flush false 引數 objects 複數,表...
玩的就是創意
在地鐵中做廣告已經是司空見慣的了,廣州的地鐵更是將 注意力經濟 的概念發揮到了極致。廣告出現在車廂內,站台前,地鐵走道兩側和地鐵口的階梯旁,甚至在腳底下。而這些廣告雖然讓人賞心悅目,但是卻有著鋪天蓋地的壓迫感。因為這樣的廣告 都可以見到,只不過在地鐵裡的廣告所染上的灰塵更少,顏色更鮮豔罷了。於是,我...
新閣教育 這樣玩PLC,是不是有意思多了
01 前言 近幾年,在工控自動化領域,物聯網必然是最熱門的話題之一。然而,對於很多plc工程師來說,物聯網似乎仍然是乙個很遙遠的概念。今天,主要分享一下如何基於阿里雲的物聯網平台,實現plc控制系統資料遠端上雲,這裡以西門子1500plc為例,其他品牌plc開發思路是一樣的。02 iot平台 2 點...