Python2語法簡記(2):變數型別
2 變數型別
變數建立:用等號(=)賦值來建立變數。變數與型別無關,物件與型別有關。可以通過del刪除變數。
在Python中只有物件才有型別,變數沒有型別,通過等號(=)賦值來建立變數。
等號(=)前面的變數名與型別無關,等號(=)後面的值才是被建立的物件,變數名只是引用了該值物件的地址。同一變數名可以引用不同型別的物件。
多個變數之間用逗號 ,隔開
counter = 100 # 賦值整型變數
miles = 1000.0 # 浮點型
name = "John" # 字串
a = b = c = 1
a, b, c = 1, 2, "john"
五個標準的資料型別:數字、字串、列表、元祖、字典
- Numbers(數字)
- String(字串)
- List(列表)
- Tuple(元組)
- Dictionary(字典)
數字(Numbers):不可改變。支援int, long, float, complex。例:a = 10
age1 = age2 = age3 = 30
del age2, age3
數字是不可改變的資料型別。
可以使用del語句刪除一些物件的引用。
Python支援四種不同的數字型別:
- int(有符號整型)
- long(長整型[也可以代表八進位制和十六進位制])
- float(浮點型)
- complex(複數)
字串(String):不可改變。有2種取值順序。通過[頭下標:尾下標]擷取。+連線,*重複。例:name = "Jack"
name = “Jack”
字串是不可改變的資料型別。
python的字串列表有2種取值順序:
從左到右索引預設0開始的,最大範圍是字串長度少1
從右到左索引預設-1開始的,最大範圍是字串開頭
可以使用 [頭下標:尾下標] 來擷取相應的字串,其中下標是從 0 開始算起,可以是正數或負數,下標可以為空表示取到頭或尾。
[頭下標:尾下標] 獲取的子字串包含頭下標的字元,但不包含尾下標的字元。
加號(+)是字串連線運算子,星號(*)是重複操作
#!/usr/bin/python
# -*- coding: UTF-8 -*-
str = 'Hello World!'
print str # 輸出完整字串
print str[0] # 輸出字串中的第一個字元
print str[2:5] # 輸出字串中第三個至第五個之間的字串
print str[2:] # 輸出從第三個字元開始的字串
print str * 2 # 輸出字串兩次
print str + "TEST" # 輸出連線的字串
列表(List):可改變。可混值。有2種取值順序。通過[頭下標:尾下標]擷取。+連線,*重複。例:list = [‘runoob’, 786, 2.23]
list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]
list.append('hello') # 新增列表元素
del list[2] # 刪除列表的元素
一個列表中的元素可以混合支援字元,數字,字串甚至可以包含列表(即巢狀)。可以改變列表中元素的值。
列表和字串一樣,也可以使用 [頭下標:尾下標] 來擷取相應的列表,其中下標是從 0 開始算起,可以是正數或負數,下標可以為空表示取到頭或尾。
加號 + 是列表連線運算子,星號 * 是重複操作。
元祖(Tuple):只讀列表。多個物件以逗號隔開,預設為元祖。例:tuple = (‘runoob’, 786, 2.23)
# 元祖不能二次賦值,不能新增刪除元素,相當於只讀列表,用法和列表一樣。
tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
tup1 = (50,) # 只包含一個元素時,需要在元素後加逗號
del tup1 # 可以刪除整個元祖
# 任意無符號的物件,以逗號隔開,預設為元組
print 'abc', -4.24e93, 18+6.6j, 'xyz'
x, y = 1, 2
print "Value of x , y : ", x,y
字典(Dictionary):有key/value對組成。通過key存取元素。不支援擷取、+連線、*重複。例:tindic = {‘name’ : ‘john’, ‘age’ = 30}
tindict = {'name': 'john','code':6734, 'dept': 'sales'}
字典由索引(key)和它對應的值value組成。字典當中的元素是通過鍵來存取,列表是通過偏移存取。
字典不支援擷取,不支援加號 + 和 星號 *
#!/usr/bin/python
# -*- coding: UTF-8 -*-
dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
print dict['one'] # 輸出鍵為'one' 的值
print dict[2] # 輸出鍵為 2 的值
print tinydict # 輸出完整的字典
print tinydict.keys() # 輸出所有鍵
print tinydict.values() # 輸出所有值
del tinydict['Name']; # 刪除鍵是'Name'的條目
tinydict.clear(); # 清空詞典所有條目
del tinydict ; # 刪除詞典
鍵不可變,可以用數字、字串、元祖做鍵。
資料型別轉換:將型別做為函式名。例:name = str(1234)
資料型別的轉換,只需要將資料型別作為函式名。例如:name = str(1234)