python基本數據類型——字典
阿新 • • 發佈:2018-04-06
string items python range 字典 lec blog nbsp IT
字典
1. “鍵-值”對的可變序列,
2. ‘鍵’ 可以是任意不可變序列,如整數、實數、復數、字符串、元組等,不允許重復,‘值’ 可以重復
3. 可以使用globals() 和 locals() 查看當前作用域內所有全局/局部變量和值的字典
1 #創建字典
2 >>keys = [‘a‘,‘b‘,‘c‘]
3 >>values = [1,2,3]
4 >>adic = dict(zip(keys,values))
5 >>print(adict)
6 {‘a‘: 1, ‘b‘: 2, ‘c‘: 3}
7
8 >>person = dict(name=‘ Jack‘,age=37)
9 >>print(person)
10 {‘name‘: ‘Jack‘, ‘age‘: 37}
11
12 # 刪除字典或其元素
13 >>del person[‘age‘]
14 >>print(person)
15 {‘name‘: ‘Jack‘}
16 >>person.pop(‘name‘)
17 ‘Jack‘
18 >>print(person)
19 {}
20
21 # 使用clear() 清空字典
22 >>person = dict(name=‘Jack‘,age=37)
23 >>print(person)
24 {‘name‘: ‘Jack‘, ‘age‘: 37}
25 >>person.clear()
26 >>print(person)
27 {}
1 # 讀取字典元素
2 >>adict = dict(name=‘Nik‘,age=32,sex=‘man‘,work=False)
3 >>adict[‘name‘]
4 ‘Nik‘
5 >>adict.get(‘age‘)
6 32
7
8 # 返回鍵值對
9 >>adict.items()
10 dict_items([(‘name‘, ‘Nik‘), (‘age‘, 32), (‘sex‘, ‘man‘), (‘work‘, False)])
11
12 # 返回值
13 >>adict.values()
14 dict_values([‘Nik‘, 32, ‘man‘, False])
15
16 # 返回鍵
17 >>adict.keys()
18 dict_keys([‘name‘, ‘age‘, ‘sex‘, ‘work‘])
1 # 添加與修改元素
2 >>perc = dict(name=‘Nik‘,age=32,sex=‘man‘,work=False)
3 >>perc[‘address‘] = ‘wht‘
4 >>print(aditc)
5 {‘address‘: ‘wht‘, ‘age‘: 32, ‘name‘: ‘Nik‘, ‘sex‘: ‘man‘, ‘work‘: False}
6
7 # 使用update將另一個字典的鍵值對全部添加到當前字典中,從頭部添加
8 >>perc.update({‘id‘:256,‘height‘:175})
9 >>print(perc)
10 {‘address‘: ‘wht‘, ‘age‘: 32, ‘height‘: 175, ‘id‘: 256, ‘name‘: ‘Nik‘,
11 ‘sex‘: ‘man‘, ‘work‘: False}
12
13 # 生成1000個隨機字符,並統計每個字符出現次數
14 >>import string
15 >>import random
16 >>x=string.ascii_letters+string.digits+string.punctuation
17 >>print(x)
18 ‘abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!"#$%&\‘()*+,-./:;<=>?@[\\]^_`{|}~‘
19 >>y=[random.choice(x) for i in range(1000)]
20 >>z = ‘‘.join(y)
21 >>d = dict()
22 >>for ch in z:
23 d[ch] = d.get(ch,0)+1
24 >>print(d)
25 #結果較多,不列出
26
27 #使用collections模塊的Counter類統計字符次數
28 >>import colllections import Counter
29 >>freq = Counter(z)
30 >>freq.items()
31 # 出現次數最多的
32 >>freq.most_common(1)
33 [(‘A‘, 18)]
34 # 最多次數前3
35 >>freq.most_common(3)
36 [(‘A‘, 18), (‘)‘, 18), (‘:‘, 17)]
python基本數據類型——字典