1. 程式人生 > >python中列表、元組、字典和集合

python中列表、元組、字典和集合

列表、元組、字典和集合     

1.列表和元組。

Python中列表list和元組tuple都是表示元素序列甚至都不要求表示的元素型別一樣。都是按照下標進行存取操作,最大的不同是元組裡面的值確定之後,不能修改。

列表的建立:

 Empty_list=[]空列表。

Weekday=[‘monday’,’tuesday’,’wednesday’,’thursday’,’friday’,’saturday’,’sunday’]

或者利用函式list()建立

 Week=list();這裡的list的作用其實是把其他一些型別的集合轉化為list;

如一個a_tuple=(‘cat’),

List(a_tuple)得到的將是[‘c’,’a’,’t’]

對於二者的訪問都是採用下標方式,注意下標從0開始。二者有很多函式操作如append(value),insert(index,value),sort(),sorted(a_list),count(‘value’),join(),copy(),len(a_list),index(value),remove(‘value’),pop(index),extend(a_list()),in等的使用和其他語言差別不大,我在這裡僅對個別需要注意的地方說明一下,最重要的還是嘗試。

1.1 列表方法和字串方法:

上面舉出的方法大多是列表方法,所謂的列表方法也就是你可以用如weekday.count(‘monday’),直接將方法附在列表後面。

字串方法:如join(a_list)將列表轉換為字串。這類方法的使用是’*’.join(weekday).得到的將是weekday中的元素用’*’連結的字串。也就是說這類方法需要附在字串後面。

sort()和sorted()預設都是從小到大,字母按字母表從低到高。如果需要改變這種順序,可以在sort(reverse=True),sort是直接將排序後的結果覆蓋在原列表中,sorted則是列外創造一個列表副本。New _Week=sorted(weekday),原列表不作變動。

1.2 ‘=’和‘copy()’

  前者只是對列表的引用,二者一改全改;後者則是產生一個新的列表。

1.3 Remove(value)和pop(index)

前者是直接移除指定元素,後者是獲得指定下標的元素後再刪除。

可以看到列表和元組一個用[],一個用(),元組中元素以逗號相隔,即使只有一個元素。如

A_tuple=’liu’,如果沒有逗號,那麼宣告的就是一個字串了。多個元素時,最後一個逗號可以省略。至於外層的括號可加可不加。

tuple()函式可以將其他資料型別建立元組。tuple(weekday).

元組靈活性不及列表但是它的好處是:

        (1)佔用空間小 (2)不會意外修改 (3)可以將元組作為字典的鍵,如house={(18,20,330):'my house'} 該字典中元組作為座標。(4)函式引數傳遞。

2 字典

和java中的Map結構相似。以鍵值對的形式存在。以{}形式表示。

Dic={1:’monday’,2:’Tuesday’}

字典的新增和修改都是以key值進行。

Keys(),get(key),items(),copy(),del,clear(),in ,dict(其他結構),update(dic)

注:del 函式的使用是del Dic[1];

3. Set

Set也是用{},只是內部的元素不允許重複,也無序。如果你只是想知道某集合中是否存在某個元素而不關心順序,可以使用set。

A_set={1.2.3,3}

set()函式可以將其他資料結構變成set型別。如set(‘letter’),不過儲存時會發現其中e和t在集合中只有1個。

以上本人初學python後為鞏固知識所寫。初涉python,不對之處,敬請留言。