這篇整理 Python 的格式化輸出、輸入及流程控制的做法,依樣有 Colab 的支援讓您可以實際練習,我們就繼續介紹吧!
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
*objects
: 接受輸出的內容,多筆資料以逗號隔開。sep
: 間隔,預設一個空白。end
: 預設為\n
即換行。file
: 預設為螢幕輸出。flush
: 預設為布清除資料緩衝區。help(print)
、?print
查詢。printf
語法輸出格式碼
語法 | 說明 |
---|---|
%s | 輸出文字 |
%f | 輸出浮點數 |
%d | 輸出十進位整數 |
%e、%E | 以科學記號輸出數值 |
%o | 以八進位整數方式輸出數值 |
%x、%X | 以十六進位整數方式輸出數值 |
%c | 以字元方式輸出 |
%r | 以 repr() 函數輸出文字 |
%% | 輸出 % 百分比符號 |
新八戰鬥力只比一般人高2昆布
fp = {"新八":362, "一般人":360}
fp1 = fp["新八"] - fp["一般人"]
fp2 = (fp["新八"] -fp["一般人"]) / fp["一般人"] *100
print("志村新八比一般人強%d個昆布,戰鬥力比一般人高%.2f%%個昆布" % (fp1, fp2))
空間與對齊
%s
的%
及s
中間加入格式語法表示目的 | 表示 |
---|---|
以m格輸出 | "%ms" % _ |
數值空白前補0 | "%0md" % _ |
以m格靠左對齊 | "%-ms" % _ |
限制輸出字串長度上限 | "%.ms" % _ |
浮點數設定總寬度m及小數位數n | "%m.nf" % _ |
強迫顯示正負號 | "%+d" % _ |
負號顯示、正數留空 | "% d" % _ |
format
語法輸出format
會自動處理各種類型的資料。print("志村新八比一般人強{}個昆布,戰鬥力比一般人高{:.2}%個昆布".format(fp1,fp2))
目的 | 表示 |
---|---|
以m格輸出 | "{:m}".format() |
數值空白前補0 | "{:0m}".format() |
靠右對齊 | "{:>m}".format() |
靠左對齊 | "{:<m}".format() |
置中對齊 | "{:^m}".format() |
限制輸出字串長度上限 | "{:.m}".format() |
浮點數設定總寬度m及小數位數n | "{:m.nf}".format() |
強迫顯示正負號 | "{:+m}".format() |
負號顯示、正數留空 | "{: m}".format() |
print()
預設輸出為螢幕sys.stdout
,可以導向輸出為檔案。open(file,mode="r")
f
f
作為字串開頭的格式化代碼,更為簡潔易用。print(f"志村新八比一般人強{ fp1 }個昆布,戰鬥力比一般人高{ fp2 }%個昆布")
name = "巧虎"
age = 3
print("大家好我是%s,我今年%s歲!"% (name, age))
print("大家好我是{},我今年{}歲!".format(name, age))
print(f"大家好我是{name},我今年{age}歲!")
print(f"{name}好乖,叔叔帶你喝養樂多!")
a = input("prompt:")
str
email = '我的email帳號:'+input("請輸入您的email: ")
print(email)
input()
的結果是 str
,透過 float()
轉型才能計算喔。#BMI = w/h**2
h = input("您的身高(cm): ")
w = input("您的體重(kg): ")
BMI = float(w)/(float(h)/100)**2
print(f"您的輸入的身高{h}cm,體重為{w}公斤,BMI為{BMI}。")
if
表示:
if True:
print("YES")
if else
表示:
鐵人幫第n日 = 19
鐵人幫文章篇數 = 19
if 鐵人幫文章篇數 - 鐵人幫文章篇數 <= 0:
print("斷炊趕稿")
else:
print("不用趕稿我就讚!")
if elif else
表示:
鐵人幫第n日 = 19
鐵人幫文章篇數 = 19
if 鐵人幫文章篇數 - 鐵人幫文章篇數 == 0:
print("快趕稿,別富奸阿!!!!")
elif 鐵人幫文章篇數 - 鐵人幫文章篇數 < 0:
print("斷更! 挑戰失敗")
else:
print("持續更新我就讚!")
for
迴圈:
for x in range(10):
print (x, "is less than 10")
while
迴圈
x=0 #設定初始值
while x < 10: #while True條件判斷
print (x, "is less than 10") #執行陳述
x += 1 #初值增減
continue
及 break
:
for x in range(10):
if x==3:
continue # 直接開始執行下個迴圈
if x==8:
break # 直接跳出迴圈
print (x)
#輸出 0 1 2 4 5 6 7
try:
所有可能發生例外的程式碼都要放在try來嘗試是否有錯誤。except:
後空一格接例外類別 (class) ,底下程式區塊做相對應的例外處理。else:
假設沒有例外發生的處理。finally
是例外處理結束後,無論如何都會執行的部分(可有可無)。
try
結果不成立,執行except:
、finally:
,不執行else:
:try
結果成立,執行 else:
、 finally:
,不執行 except
:我們將 Python 基本語法的整理告一段落,其實挺燒腦的,希望對您有更多的認識與幫助,記得按讚訂閱開啟小鈴鐺,我們下篇見!