Python中3種內建資料結構 列表 元組和字典

2021-10-03 13:31:34 字數 3453 閱讀 5684

列表

list是處理一組有序專案的資料結構,即你可以在乙個列表中儲存乙個 序列 的專案。假想你有乙個購物列表,上面記載著你要買的東西,你就容易理解列表了。只不過在你的購物表上,可能每樣東西都獨自占有一行,而在python中,你在每個專案之間用逗號分割。

列表中的專案應該包括在方括號中,這樣python就知道你是在指明乙個列表。一旦你建立了乙個列表,你可以新增、刪除或是搜尋列表中的專案。由於你可以增加或刪除專案,我們說列表是 可變的 資料型別,即這種型別是可以被改變的。

例:

#!/usr/bin/env python

#coding:utf8

list =

['linux', 'nginx', 'mysql', 'php']

print 'these items are:',

for item in list:

print item,

print '\nadd apache.'

'apache'

)print 'list is now', list

print '\ni will sort my list now'

list.sort(

)print 'sorted list is %s' % list

print '\nthe first item ', list[0]

item0 = list[0]

print 'delete first item'

del list[0]

print 'list is now', list

輸出

$python using_list.py

these items are: linux nginx mysql php

add apache.

list is now [

'linux', 'nginx', 'mysql', 'php', 'apache']

i will sort my list now

sorted list is [

'apache', 'linux', 'mysql', 'nginx', 'php']

the first item apache

delete first item

list is now [

'linux', 'mysql', 'nginx', 'php'

]

元組

元組和列表十分類似,只不過元組和字串一樣是 不可變的 即你不能修改元組。元組通過圓括號中用逗號分割的專案定義。元組通常用在使語句或使用者定義的函式能夠安全地採用一組值的時候,即被使用的元組的值不會改變。

例:

#!/usr/bin/env python

#coding:utf8

zoo =

('wolf', 'elephant', 'penguin'

)print 'number of animals in the zoo is', len(zoo)

new_zoo =

('monkey', 'dolphin', zoo)

print 'number of animals in the new zoo is', len(new_zoo)

print 'all animals in new zoo are', new_zoo

print 'animals brought from old zoo are', new_zoo[2]

print 'last animal brought from old zoo is', new_zoo[2]

[2]

輸出

$ python using_tuple.py

number of animals in the zoo is 3

number of animals in the new zoo is 3

all animals in new zoo are (

'monkey', 'dolphin', (

'wolf', 'elephant', 'penguin'

))animals brought from old zoo are (

'wolf', 'elephant', 'penguin'

)last animal brought from old zoo is penguin

字典

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

注意,你只能使用不可變的物件(比如字串)來作為字典的鍵,但是你可以不可變或可變的物件作為字典的值。基本說來就是,你應該只使用簡單的物件作為鍵。

鍵值對在字典中以這樣的方式標記:d = 。注意它們的鍵/值對用冒號分割,而各個對用逗號分割,所有這些都包括在花括號中。

記住字典中的鍵/值對是沒有順序的。如果你想要乙個特定的順序,那麼你應該在使用前自己對它們排序。

字典是dict類的例項/物件。

:#!/usr/bin/env python

#coding:utf8

contacts =

print "linuxeye's address is %s" % contacts[

'linuxeye'

]# adding a key/value pair

contacts[

'test']=

'[email protected]'

# deleting a key/value pair

del contacts[

'support']

print '\nthere are %d contacts in the address-book\n' % len(contacts)

for name, address in contacts.items(

):print 'contact %s at %s' % (name, address)

if contacts.has_key(

'test'

):print "\ntest's address is %s" % contacts[

'test'

]

輸出

$ python using_dict.py

linuxeye's address is [email protected]

there are 3 contacts in the address-book

contact admin at [email protected]

contact test at [email protected]

contact linuxeye at [email protected]

test's address is [email protected]

Python3內建資料結構

資料結構從廣義上理解,就是一組資料的儲存結構 python中的內建資料結構 列表list 元組tuple 字典dict 集合set 1.列表的每個元素可變,列表為可變型別 相對於元組和字串是不可變型別 2.列表是有序的,每乙個元素的位置都是確定的 3.列表中元素可以是python的任何物件 字串 數...

python內建資料結構 Python內建資料結構

分類 數值型int float complex bool 序列物件 list string tuple 鍵值對set集合 dict字典 數值型int python3中的int都是長整型,沒有大小限制,但受限於記憶體區域的大小 float 浮點型,由整數部分和小數部分組成。complex 複數,由實數...

python內建資料結構

數列物件 鍵值對 型別轉換 built in int 取整數部分 整除且向下取整 min 取最小值 max 取最大值 pow x,y 等價於x y math.sqrt 開平方 進製函式,返回值是字串 math.pi math.e 自如常數 count value 時間複雜度 len 不產生新列表,就...