Python 入門指南 - 資料型態與變數

Python 內建許多有用的資料型態,像是整數 (integer) 、浮點數 (floating-point number) 、字串 (string) 等




不含小數點的數字為整數,含小數點就是浮點數,使用上不必太擔心,常數形式就是物件 (object) ,例如
# 印出 0.2 比例的兩個整數
print(0.2.as_integer_ratio())
# 判斷 0.235 是否為整數
print(0.235.is_integer())
# 判斷 2.000 是否為整數
print(2.000.is_integer())


0.20.2352.000 都是物件,此例分別呼叫浮點數 float 型態 (type) 的 as_integer_ratio() 與 is_integer() 方法 (method) ,然後用內建函數 (function) print() 印出結果。


字串 (string) 則是用單引號或雙引號圍起來的內容,使用上兩者並無差別,若有需要在雙引號字串中使用單引號,可以直接寫,反之亦然,另外字串也可使用跳脫序列 (escape sequence) ,例如
print("Hello world!")        # 印出 Hello world!
print("Hello\tworld!")       # 印出 Hello world!
print("John's Treasure!")    # 印出 John's Treasure!
print('Hello world!')        # 印出 Hello world!
print('Hello\tworld!')       # 印出 Hello world!
print('John\'s "Treasure"!') # 印出 John's "Treasure"!


跳脫序列是一些不可見字元,由斜線 \ 開始,然後接一些特定的英文字元,常見的有
跳脫序列的字元說明
\a響鈴
\b倒退鍵
\f跳頁
\n印出新列
\r歸位符號
\ttab 鍵
\v垂直定位符號
\\印出反斜線
\?印出問號
\'印出單引號
\"印出雙引號


另外有三個常數很特別,表示真假值的 TrueFalse ,還有表示什麼都不是的 None ,這三個常數也都是關鍵字 (keyword) 。若變數 (variable) 指派到 None ,這變數就如同空值,在條件測試中等同 False
a = None  # 將 a 設定為 None
b = True  # 將 b 設定為 True
c = False # 將 c 設定為 False
print(a)  # 印出 a
print(b)  # 印出 b
print(c)  # 印出 c


除此之外, Python 中還有許多可包含多筆資料的複合資料型態,常用的如串列 (list)
a = []                      # 建立空串列
b = [1, 2.0, "3", [4], (5)] # 建立具有五個元素的串列
print(b[1])                 # 印出 b 的第 1 個元素 2.0
print(b[3])                 # 印出 b 的第 3 個元素 [4]


串列的字面常數為用中括弧圍起來的資料,裡頭可以是任意型態的常數或變數,每個元素以英文逗點分開。我們可以在串列變數後用中括弧存取裡頭的元素,中括弧裡頭用以 0 開始的索引值,如上例 b 第 0 個元素為 1 ,第 2 個元素為 2.0 ,其餘可類推。


串列的特性是可變的 (mutable) ,這是說我們可以任意改變串列中的元素,另一個相對於串列的資料型態為序對 (tuple) ,序對則是不可變的 (immutable)
a = ()                      # 建立空序對
b = (1, 2.0, "3", [4], (5)) # 建立具有五個元素的序對
print(b[1])                 # 印出 b 的第 1 個元素 2.0
print(b[3])                 # 印出 b 的第 3 個元素 [4]


序對的字面常數為利用小括弧圍起來的資料,裡頭同樣可以是任意型態的常數或變數,取得元素的方式如同串列用中括弧及索引值。一旦建立序對型態的物件後,該物件就不能更新裡頭的元素。


其他還有非常多內建的複合資料型態,常用的還有字典 (dictionary) 。字典是種配對型具有多筆資料的物件,簡單說,字典每一筆資料都是 key:value 所組成, key 就是存取該筆 value 的索引值,例如
a = {}               # 建立空字典
b = {1:2.0, "3":[4]} # 建立兩個配對資料的字典
print(b[1])          # 印出 b 中 key 為 1 的 value
print(b["3"])        # 印出 b 中 key 為 "3" 的 value


同樣的,存取 value 亦是用中括弧,中括弧裡頭放 key 。通常字典的 key 是用不可變的資料型態,例如數字或字串,至於 value 則沒有限制。


介紹了很多種資料型態的物件,可是物件還是用變數存取才比較方便。接下來,我們來看看變數命名規則與縮排吧!


中英文術語對照
整數integer
浮點數floating-point number
字串string
物件object
型態type
函數function
字串string
跳脫序列escape sequence
關鍵字keyword
變數variable
串列list
可變的mutable
序對tuple
不可變的immutable
字典dictionary


您可以繼續參考
基礎篇


相關目錄
回 Python 入門指南
回 Python 教材
回首頁


參考資料
http://docs.python.org/3.1/tutorial/introduction.html
http://docs.python.org/3.1/tutorial/datastructures.html
http://docs.python.org/3.1/library/stdtypes.html

沒有留言: