- Python完全自學教程
- 明日科技編著
- 1202字
- 2023-10-09 15:50:38
1.4 基本輸出函數print()
在Python中,使用內置的print()函數可以將結果輸出到IDLE或者標準控制臺上。print()函數的語法格式如下。
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
參數說明如下。
value:表示要輸出的值;可以是數字、字符串、各種類型的變量等。
…:值列表,表示可以一次性輸出多個值;輸出多個值時,需要使用“,”(英文逗號)分隔,輸出的各個值之間默認用空格隔開。
sep:表示輸出的各個值之間的間隔符,默認是一個空格,也可以設置為其他的分隔符。
end:表示輸出完最后一個值后需要添加的字符串,用來設定輸出語句以什么結尾,默認是換行符“\n”,即輸出完會跳到新行;可以換成其他字符串,如end='\t' 或end=' '等。
file:表示輸出的目標對象,可以是文件,也可以是數據流,默認是sys.stdout。也可以設置“file = 文件存儲對象”,把內容存到該文件中。
flush:表示是否立刻將輸出語句輸出到目標對象,flush的值為False或者True,默認flush=False,表示輸出值會存在緩存;當flush=True時,輸出值會被強制寫入文件。
其中,輸出內容可以是數字和字符串(字符串需要使用引號括起來),此類內容將直接輸出;輸出內容也可以是包含運算符的表達式,此類內容將計算結果輸出。例如:
a = 100 # 變量a,值為100 b = 5 # 變量b,值為5 print(9) # 輸出數字9 print(a) # 輸出變量a的值100 print(a*b) # 輸出a*b的結果500 print("go big or go home") # 輸出“go big or go home”(要么出眾,要么出局)
多學兩招
在Python中,默認情況下,使用print()語句輸出結果后會自動換行,如果想要一次輸出多個內容,而且不換行,可以將要輸出的內容使用英文逗號分隔。下面的代碼將在一行上輸出變量a和b的值,以及字符串。
print(a,b,'要么出眾,要么出局') # 輸出結果:100 5 要么出眾,要么出局
注意
sep、end、file、flush都必須以命名參數方式傳參,否則會被當作需要輸出的對象。
提示
如果print()函數不傳遞任何參數,將會輸出end參數的默認值,即輸出空行。
1.4.1 使用連接符連接多個字符串
數值可以直接輸出,但使用“+”連接數值和其他類型數據時,系統會默認為加法計算,會報錯??梢允褂谩?”連接,或者將數值作為字符串來處理,即在兩端加英文單引號或英文雙引號。
print(1314) # 直接輸出整數,可不帶英文雙引號或英文單引號 1314 print(12.22) # 直接輸出浮點數 12.22 print(10 / 3) # 可以包含運算表達式,輸出運算結果 3.3333333333333335 print(100 * 3.13 + 60) # 可以包含運算表達式,輸出運算結果 373 print(2, 0, 2, 0) # 使用“,”連接要輸出的數值,輸出結果中間用空格分隔 2 0 2 0 print(192, 168, 1, 1, sep='.') # 使用“.”連接輸出數值,數值間用“.”分隔 192.168.1.1 print("廣州恒大" + 43) # 不能直接使用“+”連接字符串和數值,會報錯 TypeError: can only concatenate str (not“int”) to str print("廣州恒大" + str(43)) # 使用“+”連接字符串和數值時,數值要轉換為字符串 廣州恒大43 print("廣州恒大", 43) # 使用“,”連接字符串和數值,輸出的字符串和數值用
空格分隔 廣州恒大 43 print("%e" % 120563332111098) # 使用操作符“"%e"%”格式化數值為科學記數法 1.205633e+14
1.4.2 指定位數編號輸出
zfill()函數可按指定位數輸出編號,如將輸入的數字格式化為5位編號輸出,代碼如下。
instr=input('請輸入一個數字:') print (instr.zfill(5)) # 輸出5位編號
運行程序,輸入一個數字,會將其格式化為5位編號,如圖1.16所示。
圖1.16 輸出5位編號