Python中元組,列表,字典的區別

Mrzhangjwei發表於2016-11-24

Python中,有3種內建的資料結構:列表、元組和字典。

1. 列表

 list是處理一組有序專案的資料結構,即你可以在一個列表中儲存一個序列的專案。列表中的專案。列表中的專案應該包括在方括號中,這樣python就知道你是在指明一個列表。一旦你建立了一個列表,你就可以新增,刪除,或者是搜尋列表中的專案。由於你可以增加或刪除專案,我們說列表是可變的資料型別,即這種型別是可以被改變的,並且列表是可以巢狀的。

例項:

#coding=utf-8
animalslist=['fox','tiger','rabbit','snake']
print "I don't like these",len(animalslist),'animals...'

for items in animalslist:
print items,

print "\n操作後"   
#對列表的操作,新增,刪除,排序
animalslist.append('pig')
del animalslist[0]
animalslist.sort()
for i in range(0,len(animalslist)):
    print animalslist[i],

結果:

I don't like these 4 animals...
fox tiger rabbit snake
操作後
pig rabbit snake tiger

2. 元組

 元祖和列表十分相似,不過元組是不可變的。即你不能修改元組。元組通過圓括號中用逗號分隔的專案定義。元組通常用在使語句或使用者定義的函式能夠安全的採用一組值的時候,即被使用的元組的值不會改變。元組可以巢狀。
>>> zoo=('wolf','elephant','penguin')
>>> zoo.count('penguin')
1
>>> zoo.index('penguin')
2
>>> zoo.append('pig')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'append'
>>> del zoo[0]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object doesn't support item deletion

3. 字典

字典類似於你通過聯絡人名稱查詢地址和聯絡人詳細情況的地址簿,即,我們把鍵(名字)和值(詳細情況)聯絡在一起。注意,鍵必須是唯一的,就像如果有兩個人恰巧同名的話,你無法找到正確的資訊。

 鍵值對在字典中以這樣的方式標記:d = {key1 : value1, key2 : value2 }。注意它們的鍵/值對用冒號分割,而各個對用逗號分割,所有這些都包括在花括號中。另外,記住字典中的鍵/值對是沒有順序的。如果你想要一個特定的順 序,那麼你應該在使用前自己對它們排序。

例項:

#coding=utf-8
dict1={'zhang':'張家輝','wang':'王寶強','li':'李冰冰','zhao':'趙薇'}
#字典的操作,新增,刪除,列印
dict1['huang']='黃家駒'
del dict1['zhao']
for firstname,name in dict1.items():
    print firstname,name

結果:
li 李冰冰
wang 王寶強
huang 黃家駒
zhang 張家輝

相關文章