Python 基礎(02):從 Hello World 開始,變數及數值操作

我們把「Hello World」升級成真正會動起來的小程式。

你會用變數裝起資料、用數學運算讓程式「會算」、用字串連接把輸出變得更有表達力,最後再用 input() 跟使用者互動。

過程中也會刻意踩幾個常見地雷(例如把字串跟數字硬湊在一起的 TypeError、被 0 除的 ZeroDivisionError),學會看懂並修正錯誤。

Python 計算 Python Calculation

計算:電腦的專長

電腦非常擅長執行計算。Python使用+、-、*和/執行加法、減法、乘法和除法的算術運算

# 輸出 "500"
print(573 - 74 + 1)

# 輸出 "50"
print(25 * 2)

# 輸出 "2.0"
print(10 / 5)

請注意,當我們執行除法時,結果有小數點。這是因為Python在執行除法之前將所有整數轉換為浮點數。嘗試除以0會引發特殊錯誤:ZeroDivisionError

指數與餘數運算

指數運算 (**)

Python可以執行指數運算。在書面數學中,指數可能顯示為上標數字,但在現代鍵盤上輸入上標數字並不總是容易的。由於這個運算與乘法相關,我們使用**符號。

# 2的10次方,或1024
print(2 ** 10)

# 8平方,或64
print(8 ** 2)

# 9 * 9 * 9,9的3次方,或729
print(9 ** 3)

# 我們甚至可以執行分數指數
# 4的0.5次方,或2
print(4 ** 0.5)

餘數運算 (%)

Python提供了除法運算符的輔助運算符,稱為模運算符。模運算符由%表示,給出除法計算的餘數。

# 輸出4,因為29 / 5是5餘4
print(29 % 5)

# 輸出2,因為32 / 3是10餘2
print(32 % 3)

# 被2取模返回偶數為0,奇數為1
# 輸出0
print(44 % 2)

變更數字:運算與更新

分配數值的變數可以與數字本身相同對待。兩個變數可以相加、除以2並乘以第三個變數,Python不會區分變數和字面量(如本例中的數字2)。

初始值

coffee_price = 1.50
number_of_coffees = 4

# 輸出 "6.0"
print(coffee_price * number_of_coffees)

# 輸出 "1.5"
print(coffee_price)

# 輸出 "4"
print(number_of_coffees)

更新後

# 更新價格
coffee_price = 2.00

# 輸出 "8.0"
print(coffee_price * number_of_coffees)

# 輸出 "2.0"
print(coffee_price)

# 輸出 "4"
print(number_of_coffees)

對變數執行算術運算不會改變變數本身 — 只能使用=符號更新變數。

Python 變數賦值 Python Assignment

字串連接:組合文本

+運算符不僅可以加兩個數字,還可以”加”兩個字串!將兩個字串組合的過程稱為字串連接。執行字串連接會創建一個全新的字串,由第一個字串的內容後跟第二個字串的內容組成(中間沒有添加空格)。

基本連接

greeting_text = "嗨!"
question_text = "你好嗎?"
full_text = greeting_text + question_text

# 輸出 "嗨!你好嗎?"
print(full_text)

添加空格

greeting_text = "嗨!"
question_text = "你好嗎?"
full_text = greeting_text + " " + question_text

# 輸出 "嗨! 你好嗎?"
print(full_text)

如果要將字串與數字連接,需要先使用str()函數將數字轉換為字串。

字串與數字連接

birthday_string = "我今年"
age = 10
birthday_string_2 = "歲了!"

# 將整數與字串連接,需要先將整數轉換為字串
full_birthday_string = birthday_string + str(age) + birthday_string_2

# 輸出 "我今年10歲了!"
print(full_birthday_string)

# 如果只是想輸出整數
# 我們可以將變數作為參數傳遞給print()
# 無論它是否為字串。
# 這也輸出 "我今年10歲了!"
print(birthday_string, age, birthday_string_2)

使用str()我們可以將非字串變數轉換為字串,然後連接它們。但對於print語句的參數,不需要將數字轉換為字串。

快速更新變數:+=運算符

Python為更新變數提供了一種簡便方法。當您有一個保存在變數中的數字,並且想要添加到該變數的當前值時,可以使用+=(加等於)運算符。

初始狀態

# 首先我們有一個保存數字的變數
number_of_miles_hiked = 12

更新變數

# 然後我們需要更新該變數
# 假設我們今天又徒步了兩英里
number_of_miles_hiked += 2

檢查結果

# 新值是舊值
# 加上加等號後面的數字
print(number_of_miles_hiked)  # 輸出14

加等於運算符也可用於字串連接:caption = “美麗的風景!” caption += ” #無濾鏡” caption += ” #感恩”

多行字串:處理長文本

Python字串非常靈活,但如果我們嘗試創建占據多行的字串,我們會遇到語法錯誤。Python提供了解決方案:多行字串。通過使用三引號(”””或”’)而不是一個,我們告訴程式字串直到下一個三引號才結束。

leaves_of_grass = """
詩人來了!演說家、歌手、音樂家來了!
今天不是為了證明我和回答我是什麼,
而是你們,一個新的種族,本土的、強健的、大陸的,
比以前所知的更偉大,
覺醒吧!因為你們必須證明我。
"""

print(leaves_of_grass)

在上面的例子中,我們將一位著名詩人的話分配給一個變數。即使引用包含多個換行符,代碼也能工作!如果多行字串未分配給變數或在表達式中使用,它將被視為註解

使用者輸入:互動式程式設計

到目前為止,我們已經介紹了如何在Python文件中直接為變數賦值。然而,我們通常希望程式的使用者能夠輸入新信息。

我們如何做到這一點?事實證明,為變數賦值的另一種方法是通過使用者輸入。

likes_snakes = input("你喜歡蛇嗎?")

# 程式會為使用者輸出 "你喜歡蛇嗎?"
# 使用者會輸入答案(例如,"是的!我有七條蟒蛇作為寵物!")並按Enter
# 變數likes_snakes會被賦予使用者答案的值

input()不僅可以用於收集使用者的各種不同信息,一旦你將該信息存儲為變數,你就可以使用它來模擬互動。

Python 輸入 Python input

相關系列文章

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

返回頂端