Day4—python基礎—字典and集合
阿新 • • 發佈:2018-03-03
amp 輸出 type -s 詳細 定義 value key 功能
字典就是鍵值對應,鍵唯一,無序。集合用來去重,關系測試,無序。
字典這種數據類型常用的方法有:
1.clear() print(name.clear()) 清除字典中的數據,輸出結果為none 2.fromkeys() print(name.fromkeys(["c","z","p"],100)) 創建字典,通過列表的方式指定多個key,並將這些key賦予相同的值 輸出結果為: {‘c‘: 100, ‘z‘: 100, ‘p‘: 100} 3.get() v = dic[‘k11111‘] print(v) v = dic.get(‘k1‘,111111) print(v) 根據Key獲取值,key不存在時,可以指定默認值(None)4.pop name={ "k1":"v1", "k2":"v2" } name.pop("k1") 刪除,指定刪除的key,如果存在,刪除,如果key不存在,報錯 print(name) 輸出結果: {‘k2‘: ‘v2‘} 5.popitem dic={ "k1":"v1", "k2":"v2" } print(dic.popitem()) Python 字典 popitem() 方法隨機返回並刪除字典中的一對鍵和值(一般刪除末尾對)。如果字典已經為空,卻調用了此方法,就報出KeyError異常 輸出結果: {‘k2‘: ‘v2‘} 6.update dic = { "k1": ‘v1‘, "k2": ‘v2‘ } dic.update({‘k1‘: ‘111111‘}) 更新 print(dic) 運行結果: {‘k1‘: ‘111111‘, ‘k2‘: ‘v2‘} 字典的for循環 for i in dic.keys(): 輸出字典中所有key的值 print(i) for i in dic.values(): 輸出字典中所有value的值 print(i) for k,v indic.items(): 輸出字典中所有的key對應的value值 print(k,v) 列表、元組、字典都可以通過切片的方式進行增刪改查。
集合的定義方法如下:
name=set("czp") /name=set({1,2,3,4}) print(type(name)) 運行結果: {‘z‘, ‘c‘, ‘p‘} /{9, 10, 3, 5} 打印結果可以看到是元素是無序的 <class ‘set‘> 使用type()方法打印name的類型為set 通過下面這個例子 進一步說明集合是去重的 name=set("czpcc") print(name) 運行結果: {‘c‘, ‘p‘, ‘z‘} 集合的一些基本方法如下所示: 1.add():添加,僅適用於添加單個元素 s = set([3,5,9,10]) s.add("x") 添加一個元素,註意:add方法只能添加單個元素, print(s) 添加多個元素需要用update方法 運行結果: {3, 5, 9, 10, ‘x‘} 2.update():更新,適用於添加多個元素 s = set([3,5,9,10]) s.update([1,2]) 通過update方法添加多個元素,可以使用[]列表的形式,也可以使用“”,“”這種,的形式隔開添加 print(s) 運行結果: {1, 2, 3, 5, 9, 10} 3.clear():清空 s = set([3,5,9,10]) s.clear() 移除集合中的所有元素 4.copy() :深淺copy會在後面的博客中詳細說。 5.pop():刪除(隨機刪) s = set([3,5,9,10]) s.pop() pop()方法,隨機刪除集合中的元素,如果集合為空,程序報錯 print(s) 運行結果: {10, 3, 5} 6.remove():刪除(指定元素刪除) s = set([3,5,9,10]) s.remove(3) 指定元素刪除,如果為空或者該元素不存在,程序報錯 print(s) 運行結果: {9, 10, 5} 上面提到了,集合的主要功能是去重和關系測試,對於集合的關系測試使用方法如下所示: 1.交集,可以如下兩種方式表示 s = set([3,5,9,10]) v = set([3,4,9,11]) print(s&v) print(s.intersection(v)) 求兩個集合的交集 運行結果是一樣的: {9, 3} {9, 3} 2.並集,用如下兩種方式表示 s = set([3,5,9,10]) v = set([3,4,9,11]) print(s|v) 求兩個集合的並集 print(s.union(v)) 運行結果: {3, 4, 5, 9, 10, 11} {3, 4, 5, 9, 10, 11} 3.差集,用如下兩種方式表示 s = set([3,5,9,10]) v = set([3,4,9,11]) print(s-v) 求兩個集合的差集 print(s.difference(v)) 運行結果如下: {10, 5} {10, 5} 另外還有 issubset()-判斷子集、issuperset()-判斷父級等方法,返回的值為布爾值。
Day4—python基礎—字典and集合