1. 程式人生 > >python3的列表、元組、集合、字典操作

python3的列表、元組、集合、字典操作

python的列表就是陣列和php的Array和java的List一樣
元組相當於java和php的Enum
字典相當於java的Map,php的關聯陣列


python中列表是可變的,這是它區別於字串和元組的最重要的特點,一句話概括即:列表可以修改,而字串和元組不能
以下是 Python 中列表的方法:
方法描述
list.append(x)把一個元素新增到列表的結尾,相當於 a[len(a):] = [x]
list.extend(L)通過新增指定列表的所有元素來擴充列表,相當於 a[len(a):] = L
list.insert(i, x)在指定位置插入一個元素第一個引數是準備插入到其前面的那個元素的索引,例如 a.insert(0, x) 會插入到整個列表之前,而 a.insert(len(a), x) 相當於 a.append(x) 
list.remove(x)刪除列表中值為 x 的第一個元素如果沒有這樣的元素,就會返回一個錯誤
list.pop([i])從列表的指定位置刪除元素,並將其返回如果沒有指定索引,a.pop()返回最後一個元素元素隨即從列表中被刪除(方法中 i 兩邊的方括號表示這個引數是可選的,而不是要求你輸入一對方括號,你會經常在 Python 庫參考手冊中遇到這樣的標記)
list.clear()移除列表中的所有項,等於del a[:]
list.index(x)返回列表中第一個值為 x 的元素的索引如果沒有匹配的元素就會返回一個錯誤
list.count(x)返回 x 在列表中出現的次數
list.sort()對列表中的元素進行排序
list.reverse()倒排列表中的元素
list.copy()返回列表的淺複製,等於a[:]


python集合是一個無序不重複元素的集基本功能包括關係測試和消除重複元素
可以用大括號({})建立集合注意:如果要建立一個空集合,你必須用 set() 而不是 {} ;後者建立一個空的字典,下一節我們會介紹這個資料結構


python字典以關鍵字為索引,關鍵字可以是任意不可變型別,通常用字串或數值而列表是以連續的整數為索引
理解字典的最佳方式是把它看做無序的鍵=>值對集合在同一個字典之內,關鍵字必須是互不相同
一對大括號建立一個空的字典:{}

test.py

#!/usr/bin/python3
#列表操作
list=[1,2,3,4,5,6,7];
print(list.count("d"))
list.insert(1,"b")
list.append(8);
list.remove(7);#7和"7"不一樣的
print(list)
print(list.index(2))
print(list.reverse());
#有字串和數字時無法排序
#print(list.sort())


#集合操作
lang={"php","java","js","android","python","sql"}
print(('java' in lang))
b=set("abcda") #會去重
c=set("defgg")
print(b)
print(b-c) #在b但不在c中
print(b&c) #在b也在c中


#字典操作
tel={"wang":8080,"li":27017,"chen":11211}
tel["wu"]=6379;
print(tel)
del tel["wu"]
print(tel)
print(tel.keys())
print("wang" in tel)
print("jiang" in tel)


for k,v in tel.items():
	print(k,v)
執行結果
[[email protected] pythonCode]# python3 test.py
2
['d', 'b', 'd', 1, 2, 3, 4, 5, 6, 8]
4
None
True
{'b', 'c', 'd', 'a'}
{'b', 'c', 'a'}
{'d'}
{'wang': 8080, 'chen': 11211, 'wu': 6379, 'li': 27017}
{'wang': 8080, 'chen': 11211, 'li': 27017}
dict_keys(['wang', 'chen', 'li'])
True
False
wang 8080
chen 11211
li 27017