撰寫程式不僅僅是讓電腦執行單向的指令,更重要的是,讓程式能夠與使用者進行雙向互動。這篇文章將帶您學習 Python 中最基礎、也最核心的四個互動工具:print()、input() 以及它們的好幫手 int() 和 str()。
掌握了這四個函式,您就能讓程式「開口說話」並「接收指令」,為後續的程式設計打下堅實基礎。
1. 讓程式開口說話:print()
print() 函式是 Python 中最常用的內建功能之一,它的唯一任務就是將您指定的內容輸出到螢幕上,讓使用者看到。
基本用法: 直接將您想要輸出的內容放在 print() 函式的小括號 () 內即可。
# 輸出字串
print("哈囉,歡迎來到 Python 世界!")
# 輸出變數的內容
name = "小明"
print(name)
# 結合多個內容一起輸出
print("我的名字是", name, ",我正在學習 Python。")
print() 函式預設會在輸出結束後換行,如果您不希望換行,可以使用 end 參數來指定結尾符號,例如 end="" 表示不換行。
print("我愛", end="")
print("Python")
# 輸出:我愛Python
2. 接收使用者輸入:input()
input() 函式用於暫停程式的執行,並等待使用者從鍵盤輸入資料。當使用者輸入完畢並按下 Enter 鍵後,input() 函式會將使用者輸入的內容以「字串(str)」的形式回傳。
基本用法: 將 input() 函式的結果賦值給一個變數,以便後續使用。您也可以在括號內放入提示文字,引導使用者輸入。
# 等待使用者輸入名字,並將結果儲存到 name 變數
name = input("請輸入你的名字:")
# 接著用 print() 函式將其輸出
print("你好," + name + "!")
【重要觀念!】
input() 函式回傳的永遠是字串(str)。即使使用者輸入的是數字,Python 也會將其視為一串文字。這就是為什麼我們需要學習接下來的型別轉換。
3. 型別轉換:int() 與 str()
當您想對使用者輸入的「數字」進行數學運算時,必須先將它從字串(str)型別轉換為數字型別(例如:整數 int 或浮點數 float)。同樣地,如果您想將數字與字串拼接(+)在一起,也需要先將數字轉換為字串。
int():將字串轉換為整數
int() 函式能夠將一個包含整數的字串轉換為真正的整數型別,讓您可以進行數學運算。
# 讓使用者輸入兩個數字,計算總和
num1 = input("請輸入第一個數字:") # input() 得到的是字串
num2 = input("請輸入第二個數字:") # input() 得到的是字串
# 錯誤示範:直接相加會變成字串拼接
print("直接相加的結果是:", num1 + num2)
# 假設輸入 10 和 20,輸出會是 1020
# 正確示範:使用 int() 進行型別轉換後再相加
total = int(num1) + int(num2)
print("轉換型別後相加的結果是:", total)
# 假設輸入 10 和 20,輸出會是 30
str():將數字或布林值轉換為字串
str() 函式能將任何型別(例如:數字、布林值)轉換為字串。這在您需要將數字與文字拼接在一起時非常有用。
age = 18
# 錯誤示範:無法直接將數字和字串相加
# print("我的年齡是" + age)
# 會出現 TypeError: can only concatenate str (not "int") to str
# 正確示範:使用 str() 進行型別轉換
print("我的年齡是" + str(age) + "歲。")
# 輸出:我的年齡是18歲。
綜合實戰練習:打造一個簡單的BMI計算機
現在,讓我們將所學的 input()、print()、int() 和 str() 綜合運用,來打造一個能夠計算身體質量指數(BMI)的小程式。
# 1. 接收使用者輸入的身高和體重
height_str = input("請輸入您的身高(公尺):")
weight_str = input("請輸入您的體重(公斤):")
# 2. 將字串轉換為數字(使用 float() 來處理小數點)
height = float(height_str)
weight = float(weight_str)
# 3. 進行 BMI 計算:BMI = 體重 / 身高平方
bmi = weight / (height ** 2)
# 4. 輸出計算結果
print("您的 BMI 值是:" + str(bmi))
透過這個簡單的專案,您就能體會到 input() 和 print() 如何實現程式與使用者的互動,以及型別轉換在處理不同資料時的重要性。