Python中列表 元組 字典的異同

2021-07-05 12:48:22 字數 3433 閱讀 6305

python中三種重要的資料型別為:列表、元組、字典。下面比較一下三者的異同點。

1.列表

list是處理一組有序專案的資料結構,即你可以在乙個列表中儲存乙個序列的專案。列表中的專案。列表中的專案應該包括

在方括號中,這樣python就知道你是在指明乙個列表。一旦你建立了乙個列表,你就可以新增,刪除,或者是搜尋列表中的專案。由於你

可以增加或刪除專案

,我們說

列表是可變的資料型別,即這種型別是可以被改變的,並且列表是可以巢狀的

。舉例說明一下list的主要函式應用:

:  想列表的末尾新增乙個物件,物件型別可以使整數,可以使字元。

list.extend(l)

: 這裡的list為乙個列表物件,l同樣是列表物件,使用extend函式可以實現將l列表新增到list列表中的隊尾。

list.insert(i, x)

:  在列表的指定位置i處,新增物件x

list.remove(x)

:  從list列表中移除物件x,如果找不到物件將會出現錯誤。 

list.pop([i])

:  從list列表中刪除下表為i的資料,下表必須要從0-len(list),否則會出錯;另外,如果pop函式中沒有指定下表,預設為最後乙個物件。 

如 list.pop(0) #刪除第乙個物件 

list.pop() #刪除最後乙個物件

list.index(x)

:  在list列表中查詢物件x,如果查詢成功則返回該物件在列表中的下標位置。如果查詢不到會出現錯誤。 

例如:list.index(『hehe』) #1

list.count(x)

:  在list列表中查詢物件x,返回為查詢到的個數;如果沒有查詢到結果,就你返回為0。

list.sort(cmp=none, key=none, reverse=false)

: 將list列表按照順序排列,本身的資料相應地改變。 

list.reverse()

: 將list列表中的資料物件倒序儲存。 

索引和分片,賦值(單個元素賦值,分片賦值)

>>> l = ['abc', 'def', 'ghi', 123]
>>> l[2]
'ghi'
>>> l[-3]
'def'
>>> l[:3]
['abc', 'def', 'ghi']
>>> l[1] = 'haha'
>>> l
['abc', 'haha', 'ghi', 123]
>>> l
>>> l[2] = [123, 345, 456]
>>> l
>>> l[1:] = [123, 234, 345, 456, 567]
>>> l
['abc', 123, 234, 345, 456, 567]

對於list列表詳細講解可以檢視部落格:

2.元組

笛卡爾積中每乙個元素(d1,d2,…,dn)叫作乙個n元組(n-tuple)或簡稱元組。元組是python中內建的一種資料結構

元組是關聯式資料庫中的基本概念,關係是一張表,表中的每行(即資料庫中的每條記錄)就是乙個元組,每列就是乙個屬性。 在二維表裡,元組也稱為記錄。

元祖和列表十分相似,不過

元組是不可變的

。即你不能修改元組

。元組通過圓括號中用逗號分隔的專案定義。

元組通常用在使語句或使用者定義的函式能夠安全的採用一組值的時候,即被使用的元組的值不會改變。元組可以巢狀

。>>> zoo=('wolf','elephant','penguin')

>>> zoo.count('penguin')

1>>> zoo.index('penguin')2

乙個空的元組由一對空的圓括號組成,如 myempty = ()。然而,含有單個元素的元組必須在第乙個(唯一乙個)專案後跟乙個逗號,這樣python才能區分元組和表示式中乙個帶圓括號的物件。

python中的元組有以下特性:

3 字典

字典類似於你通過聯絡人名稱查詢位址和聯絡人詳細情況的位址簿,即,我們

把鍵(名字)

和值(詳細情況)

聯絡在一起

。注意,

鍵必須是唯一的

,就像如果有兩個人恰巧同名的話,你無法找到正確的資訊。

鍵值對在字典中以這樣的方式標記:

d =

。注意它們的鍵/值對用冒號分割,而各個對用逗號分割,所有這些都包括在花括號中。另外,記住

字典中的鍵/值對是沒有順序的

。如果你想要乙個特定的順 序,那麼你應該在使用前自己對它們排序。

以鍵值對的方式存在並操作,其特點如下:

1) 基本操作

python **

>>> table['abc']   1   >>> len(table)   3   >>> table.keys()   ['abc', 'ghi', 'def']   >>> table.values()   [1, 3, 2]   >>> table.has_key('def')   true  >>> table.items()   [('abc', 1), ('ghi', 3), ('def', 2)]
2) 修改,刪除,新增

python **

>>> table =
>>> table['ghi'] = ('g', 'h', 'i')
>>> table
>>> del table['abc']
>>> table
>>> table['xyz'] = ['x', 'y', 'z']
>>> table

3)對字典的遍歷

python **

>>> table =
>>> for key in table.keys():

print key, '/t', table[key]

abc     1   ghi     3   def     2

例項:#coding=utf-8

dict1=

#字典的操作,新增,刪除,列印

dict1['huang']='黃家駒'

del dict1['zhao'] #刪除key值為zhao的一項

for firstname,name in dict1.items():

print firstname,name

結果:li 李冰冰

wang 王寶強

huang 黃家駒

zhang 張家輝

python中的列表 元組 字典

列表和元組 可以將列表和元組當成普通的 陣列 它能儲存任意數量任意型別的python物件。和陣列一樣,通過從0開始的數字索引訪問元素,但是列表和元組可以儲存不同型別的物件。列表和元組有幾處重要的區別。列表元素用中括號 包裹,元素的個數及元素的值可以改變。元組元素用小括號 包裹,不可以更改 儘管他們的...

python列表元組字典

1.列表的資料項不需要具有相同的型別 建立乙個列表,只要把逗號分隔的不同的資料項使用方括號括起來即可 list1 google runoob 1997 2000 print list 0 list 0 2.列表的增 刪 改 查 insert delete update query 增 list.in...

python 列表,元組,字典

python中,有3種內建的資料結構 列表 元組和字典。1.列表 list是處理一組有序專案的資料結構,即你可以在乙個列表中儲存乙個序列的專案。列表中的專案。列表中的專案應該包括在方括號中,這樣python就知道你是在指明乙個列表。一旦你建立了乙個列表,你就可以新增,刪除,或者是搜尋列表中的專案。由...