print Hello World 的新玩法

2022-06-05 14:54:10 字數 2108 閱讀 6448

相信很多同學入門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 點...