Kamus Python
Kamus ialah satu lagi model bekas boleh ubah dan boleh menyimpan sebarang jenis objek.
Setiap pasangan nilai kunci (key=>value) dalam kamus dipisahkan dengan titik bertindih (:), dan setiap pasangan dipisahkan dengan koma (,), keseluruhan kamus disertakan dalam kurungan kerinting ({}), dan formatnya adalah seperti berikut:
Kunci mestilah unik, tetapi nilai tidak.
Nilai boleh daripada sebarang jenis data, tetapi kunci mestilah tidak boleh diubah, seperti rentetan, nombor atau tupel.
Contoh kamus mudah:
Anda juga boleh mencipta kamus seperti ini:
dict2 = { 'abc': 123, 98.6: 37 } ;
Nilai akses dalam kamus
Letakkan kekunci yang sepadan dalam kurungan segi empat sama biasa, seperti dalam contoh berikut:
dict = {'Nama': 'Zara', 'Umur': 7, 'Kelas': 'Pertama'};
cetak "dict[ 'Nama']: ", dict['Name'];
cetak "dict['Umur']: ", dict['Umur'];
Hasil keluaran di atas contoh:
dikt['Umur']: 7
Jika anda mengakses data menggunakan kekunci yang tiada dalam kamus, ralat berikut akan dikeluarkan:
dict = {'Nama': 'Zara', 'Umur': 7, ' Kelas': 'Pertama'};
cetak "dict['Alice']: ", dict['Alice'];
Hasil keluaran contoh di atas:
Traceback (panggilan terbaharu terakhir):
Fail "test.py", baris 4, dalam <module>
cetak "dict ['Alice']: ", dict['Alice'];
KeyError: 'Alice'
Ubah suai kamus
Cara untuk menambah kandungan baharu pada kamus adalah dengan menambah pasangan kunci/nilai baharu, mengubah suai atau memadam pasangan kunci/nilai sedia ada seperti berikut:
dict = {'Nama': 'Zara', 'Umur': 7, 'Kelas': 'Pertama'};
dict['Umur'] = 8; # kemas kini entri sedia ada
dict['Sekolah'] = "DPS School"; : ", dict['Age'];
print "dict['School']: ", dict['School'];
Hasil keluaran contoh di atas:
boleh memadamkan satu elemen atau kosongkan kamus, pembersihan hanya memerlukan satu operasi. Paparkan arahan del untuk memadam kamus, seperti ditunjukkan dalam contoh berikut:
#!/usr/bin/python
# -*- pengekodan: UTF- 8 -*-del dict['Nama']; # Kunci padam ialah entri 'Nama'
dict.clear(); # Kosongkan semua entri dalam kamus
del dict ;
cetak "dikt ['Sekolah']: ", dict ['Sekolah' ];
Tetapi ini akan membuang pengecualian kerana kamus tidak lagi wujud selepas menggunakan del:
Fail "test.py", baris 8, dalam <module>
cetak "dict[' Age']: ", dict['Age'];Nota: Kaedah
del() juga akan dibincangkan kemudian.
Ciri-ciri kunci kamus Nilai kamus boleh mengambil sebarang objek ular sawa tanpa sekatan, sama ada objek standard atau ditentukan pengguna, tetapi kunci tidak boleh.
Dua perkara penting yang perlu diingat:
1) Kunci yang sama tidak dibenarkan muncul dua kali. Jika kunci yang sama diberikan dua kali semasa penciptaan, nilai yang terakhir akan diingati, seperti dalam contoh berikut:
dict = {'Nama': 'Zara', 'Umur': 7, 'Nama': 'Manni'};
Hasil keluaran contoh di atas:
2) Kunci mestilah tidak berubah, jadi anda boleh menggunakan nombor, rentetan atau elemen Kumpulan bertindak sebagai kumpulan, jadi menggunakan senarai tidak akan berfungsi Contoh berikut:
dict = {['Name. ']: 'Zara', 'Umur': 7};
cetak "dict['Name']: ", dict['Name'];
Hasil output daripada contoh di atas:
Fail "test.py", baris 3, dalam <module>
dict = {['Name' ]: 'Zara', 'Umur': 7} ;
TypeError: senarai objek tidak boleh digoncang
Fungsi & kaedah terbina dalam kamus
Kamus Python mengandungi fungsi terbina dalam berikut:
Nombor siri | Fungsi dan perihalan | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | < td>cmp(dict1, dict2)
序号 | 函数及描述 |
---|---|
1 | cmp(dict1, dict2) 比较两个字典元素。 |
2 | len(dict) 计算字典元素个数,即键的总数。 |
3 | str(dict) 输出字典可打印的字符串表示。 |
4 | type(variable) 返回输入的变量类型,如果变量是字典就返回字典类型。 |
Kira bilangan elemen kamus, iaitu jumlah bilangan kunci.
序号 | 函数及描述 |
---|---|
1 | radiansdict.clear() 删除字典内所有元素 |
2 | radiansdict.copy() 返回一个字典的浅复制 |
3 | radiansdict.fromkeys() 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值 |
4 | radiansdict.get(key, default=None) 返回指定键的值,如果值不在字典中返回default值 |
5 | radiansdict.has_key(key) 如果键在字典dict里返回true,否则返回false |
6 | radiansdict.items() 以列表返回可遍历的(键, 值) 元组数组 |
7 | radiansdict.keys() 以列表返回一个字典所有的键 |
8 | radiansdict.setdefault(key, default=None) 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default |
9 | radiansdict.update(dict2) 把字典dict2的键/值对更新到dict里 |
10 | radiansdict.values() 以列表返回字典中的所有值 |
Fungsi dan penerangan | |
---|---|
1 | radiansdict.clear()<🎜>Padam semua elemen dalam kamus |
2 | radiansdict.copy()<🎜>Kembalikan a salinan cetek kamus |
3 | radiansdict.fromkeys()<🎜> Cipta kamus baharu, menggunakan elemen dalam jujukan seq sebagai kunci daripada kamus dan val ialah semua kunci kamus Nilai awal yang sepadan |
4 | radiansdict.get(key, default=None)<🎜 >Mengembalikan nilai kunci yang ditentukan, jika nilai itu tiada dalam kamus Kembalikan nilai lalai |
5 | radiansdict.has_key(key)< 🎜>Jika kunci ada dalam kamus dict, kembalikan benar, sebaliknya pulangkan palsu |
6 | radiansdict.items()<🎜>Mengembalikan traversable (kunci, nilai) tatasusunan tuple sebagai senarai |
7 | radiansdict.keys()<🎜>Mengembalikan semua kunci kamus sebagai senarai |
8 | radiansdict.setdefault(key, default=None)<🎜> Sama seperti get(), tetapi jika kunci tidak wujud dalam kamus, kunci akan ditambah dan nilai akan ditetapkan kepada lalai |
radiansdict.update(dict2)<🎜>Kemas kini kunci/ pasangan nilai kamus dict2 menjadi dict | |
10 | radiansdict.values()<🎜>Mengembalikan semua nilai dalam kamus sebagai senarai td> |