Types 類型

認識 Python 變量類型

類型函數​

在 Python 中,所有的東西包含變量都是一個 物件(Object 翻譯也稱對象)。

每一個對象都有自己所屬的 類型。你可以用 type() 函數來提取一個變量的類型,例如:

# no pec banana = 33 type(banana)

int 的意思是整數。 Python 能分辨出沒有小數的數字為整數型,有小數的數值為 float 浮點數型。

如果你對函數並不熟悉,別擔心我們將會有一章特別說明函數的應用。

字串 (String)​

文字的變量在 Python 裡是 字串型(str)

# no pec product = "Fuji apple" print(product) type(product)

如果你要創建一個文字變量,請記住在前後都要有引號 (") 否則 Python 會視該文字為一個變量,而不是一個文字。執行代碼的時候如果你沒有定義該變量,會看到錯誤訊息。

# no pec product = Fuji apple print(product)

布林 (Boolean)​

布林型(bool) 是另一個 Python 的變量類型,他儲存了邏輯表述的資訊。在實際應用上十分有用。我們來看一個例子:

# no pec a = 3 b = 4 a == b

False 的意思是指這兩個變量不一樣。

# no pec a = 3 b = 4 type(a == b)

我們可以用函數 type() 來提取該類型。

類型轉換

你可以轉換一個類型到另外一個類型。例如使用 str() 將一種類型轉換成字串型。

# no pec number = 13 type(str(number))

之前整數型的 number 現在已經被轉換成字串型。

str() 的使用非常常見。特別是輸出非文字變量。下面我們來看一個例子,乍看之下好像沒有問題,你預期的輸出結果應該是: It's 27 degree now.(現在是27度)。但你會看到一個錯誤訊息,Python 不能直接輸出 temperature 因為他是一個整數型變量不是文字,該數值是27。

# no pec temperature = 27 print("It's " + temperature + " degree now.")

TypeError: Can't convert 'int' object to str implicitly 意思是:錯誤!整數型物件必須轉換明確的轉換成字符型物件。

修正這個錯誤你必須使用 str()temperature 轉換成字串再輸出。

別擔心我們會有更詳細的篇幅來說明函數的使用,現在你只需要了解 Python 中的類型與最常見的轉換函數。

# no pec temperature = 27 print("It's " + str(temperature) + " degree now.")

太好了,是該做一些練習的時候了。

練習:香蕉類型​

我們接續著之前的練習(香蕉售價),現在我們來輸出 banan_discounted 的類型。

# no pec banana_price = 45 discount_rate = 0.9 banana_discounted = banana_price * discount_rate None(None) banana_price = 45 discount_rate = 0.9 banana_discounted = banana_price * discount_rate type(banana_discounted) Ex().check_function('type').has_equal_value() success_msg("Great job!")
利用type()來輸出該變量類型。

練習:兩個香蕉​

猜猜看如果我們把兩個字串變數放在輸出一起會怎樣?

輸出 two_banana_labels。 (Cavendish 是一種香蕉的名字)

# no pec banana_label = "Cavendish" two_banana_labels = banana_label + banana_label print(two_banana_labels)

我們得到了一行連在一起的字串。

接著順便輸出他的類型吧:

# no pec two_banana_labels = "Cavendish" + "Cavendish" type(None) two_banana_labels = "Cavendish" + "Cavendish" type(two_banana_labels) Ex().check_function('type').has_equal_value() success_msg("Great job!")

練習:輸出文字​

還記得我們前面提到的,輸出非字串變量時的方法嗎?

執行下面的編碼,試著修復並輸出。預期的結果是:I spent $60 on grocery shopping.(我在超商花了60塊錢。)

# no pec spending = 60 print("I spent $" + spending + " on grocery shopping.") spending = 60 print("I spent $" + str(spending) + " on grocery shopping.")
str()轉換spending成為字串型。

接下來我們要正式進入 Python 的核心章節:列表,來瞭解基本結構的運用。

請告訴我們

請告訴我們您的問題或勘誤建議。
您的意見是我們前進的動力,非常感激!