??Python包含6種內(nèi)建的序列氮采,本章重點(diǎn)討論最常用的兩種類型:列表和元組殷绍。其他的內(nèi)建序列類型有字符串(將在下一章再次討論),UIICode字符串鹊漠、buffer對(duì)象和xrange對(duì)象篡帕。
??列表和元組的區(qū)別在于,列表可以修改贸呢,元組則不能。也就是說(shuō)如果要根據(jù)要求來(lái)添加元素拢军,那么列表可能會(huì)更好用楞陷,而出于某些原因,序列不能修改的時(shí)候茉唉,使用元組則更為合適固蛾。使用后者的理由通常是技術(shù)性的,它與Python內(nèi)部的運(yùn)作方式有關(guān)度陆。這也是內(nèi)建函數(shù)會(huì)返回元組的原因艾凯。一般來(lái)說(shuō),在自己編寫的程序中懂傀,幾乎在所有的情況下都可以用列表替代元組(第4章將會(huì)介紹一個(gè)需要注意的例外情況:使用元組作為字典的鍵趾诗。在這種情況下,因?yàn)殒I不可修改蹬蚁,所以就不能使用列表)恃泪。
??在需要操作一組數(shù)值的時(shí)候,序列很好用犀斋”春酰可以用序列表示數(shù)據(jù)庫(kù)一個(gè)人的信息——第1個(gè)元素是姓名,第2個(gè)元素是年齡叽粹。根據(jù)上述內(nèi)容編寫一個(gè)列表(列表的各個(gè)元素通過(guò)逗號(hào)分隔览效,寫在方括號(hào)中),如下例所示:
>>> edward = ['Edward Gumby', 42]
??同時(shí)虫几,序列也可以包含其他的序列锤灿,因此,構(gòu)建如下的一個(gè)人員信息的列表也是可以的持钉,這個(gè)列表就是你的數(shù)據(jù)庫(kù):
>>> edward = ['Edward Gumby', 42]
>>> john = ['John Smith', 50]
>>> database = [edward, john]
>>> database
[['Edward Gumby', 42], ['John Smith', 50]]
注意??Python之中還有一種名為容器(container)的數(shù)據(jù)結(jié)構(gòu)衡招。容器基本上是包含其他對(duì)象的任意對(duì)象。序列(例如列表和元組)和映射(例如字典)是兩類主要的容器每强。序列中的每個(gè)元素都有自己的編號(hào)始腾,而映射中的每個(gè)元素則有一個(gè)名字(也稱為鍵)州刽。在第4章會(huì)介紹更多有關(guān)映射的知識(shí)。至于既不是序列也不是映射的容器類型浪箭,集合(set)就是一個(gè)例子穗椅,請(qǐng)參見第10章的相關(guān)內(nèi)容