Rumah >pembangunan bahagian belakang >Tutorial Python >Python Day-Kamus- Latihan, Tugasan
--> Simpan nilai data dalam Key:value pairs
--> dipesan, boleh ditukar dan tidak membenarkan pendua.
Latihan:
1.
menu = {'idli':10, 'dosai':20, 'poori':30} print(menu) menu['pongal'] = 40 del menu['idli'] print(menu) print(menu['dosai'])
Output:
{'idli': 10, 'dosai': 20, 'poori': 30} {'dosai': 20, 'poori': 30, 'pongal': 40} 20
2. Untuk menambah pasangan kunci:nilai dalam kamus kosong,Penggunaan fungsi get()
time_table = {} time_table['tamil'] = 10 time_table['english']= 10 print(time_table) print(time_table['tamil']) print(time_table.get('tamil')) print(time_table.get('maths')) print(time_table['maths'])
Output:
{'tamil': 10, 'english': 10} 10 10 None KeyError: 'maths'
--> Jika biasanya kita memasukkan kunci yang tiada dalam kamus maka output akan menjadi KeyError.
--> Sebaliknya jika kita menggunakan fungsi get() ia tidak mengembalikannya.
3.Untuk mendapatkan kunci, nilai dan kedua-duanya
menu = {'idli':10, 'dosai':20, 'poori':30} print(menu) print(menu.keys()) print(menu.values()) print(menu.items())
Output:
{'idli': 10, 'dosai': 20, 'poori': 30} dict_keys(['idli', 'dosai', 'poori']) dict_values([10, 20, 30]) dict_items([('idli', 10), ('dosai', 20), ('poori', 30)])
Kunci-->Mencetak kekunci daripada kamus(dict_name.keys()).
nilai-->Mencetak nilai daripada kamus(dict_name.values()).
item-->Mencetak kunci dan nilai sebagai tupel daripada kamus (dict_name.items()).
4. Untuk mendapatkan kunci atau nilai atau item secara berasingan daripada kamus.
fruits_menu = {'apple':100, 'banana':80, 'grapes':120} for fruit in fruits_menu.keys(): print(fruit) for price in fruits_menu.values(): print(price) for fruit, price in fruits_menu.items(): print(fruit, price)
Output:
apple banana grapes 100 80 120 apple 100 banana 80 grapes 120
5. Cetak nilai jika kunci mengandungi huruf 'e'.
fruits_menu = {'apple':100, 'banana':80, 'grapes':120} for fruit in fruits_menu.keys(): if 'e' in fruit: print(fruits_menu[fruit])
Output:
100 120
6. Untuk menukar kamus kepada tupel atau senarai.
fruits_menu = {'apple':100, 'banana':80, 'grapes':120} print(list(fruits_menu)) print(tuple(fruits_menu))
Output:
['apple', 'banana', 'grapes'] ('apple', 'banana', 'grapes')
7. Kamus bersarang.
emp1 = {'name':'guru prasanna', 'qual':'B.Com'} emp2 = {'name':'lakshmi pritha', 'qual': 'M.E'} print(emp1) print(emp2) employees = {101:emp1, 102:emp2} print(employees)
Output:
{'name': 'guru prasanna', 'qual': 'B.Com'} {'name': 'lakshmi pritha', 'qual': 'M.E'} {101: {'name': 'guru prasanna', 'qual': 'B.Com'}, 102: {'name': 'lakshmi pritha', 'qual': 'M.E'}}
8. Untuk mendapatkan nama pekerja sahaja daripada kamus.
emp1 = {'name':'guru prasanna', 'qual':'B.Com'} emp2 = {'name':'lakshmi pritha', 'qual': 'M.E'} employees = {101:emp1, 102:emp2} print(employees) for roll_no, employee in employees.items(): for key, value in employee.items(): if key == 'name': print(employee[key])
Output:
{101: {'name': 'guru prasanna', 'qual': 'B.Com'}, 102: {'name': 'lakshmi pritha', 'qual': 'M.E'}} guru prasanna lakshmi pritha
9. Untuk mendapatkan pekerja B.com sahaja.
emp1 = {'name':'guru prasanna', 'qual':'B.Com'} emp2 = {'name':'lakshmi pritha', 'qual': 'M.E'} employees = {101:emp1, 102:emp2} for roll_no, employee in employees.items(): for key, value in employee.items(): if value == 'B.Com': print(employee['name'])
Output:
guru prasanna
10. Untuk meningkatkan 10% daripada setiap nilai.
fruits_menu = {'apple':100, 'banana':80, 'grapes':120} for fruit in fruits_menu.values(): fruit=fruit+(fruit/10) print(fruit)
Output:
110.0 88.0 132.0
11. Untuk menukar kunci--> nilai dan nilai--> kunci.
fruits_menu = {'apple':100, 'banana':80, 'grapes':120} new_menu = {} for fruit,price in fruits_menu.items(): new_menu[price] = fruit print(new_menu)
Output:
{100: 'apple', 80: 'banana', 120: 'grapes'}
Pemahaman Kamus
fruits_menu = {'apple':100, 'banana':80, 'grapes':120} menu_dict = {(fruit,price) for fruit,price in fruits_menu.items()} print(menu_dict) menu_dict = {fruit: price for fruit,price in fruits_menu.items()} print(menu_dict) #To reverse key-->value and value-->key menu_dict = {price : fruit for fruit,price in fruits_menu.items()} print(menu_dict)
Output:
{('grapes', 120), ('apple', 100), ('banana', 80)} {'apple': 100, 'banana': 80, 'grapes': 120} {100: 'apple', 80: 'banana', 120: 'grapes'}
dapatkan()
Kaedah get() mengembalikan nilai item dengan kunci yang ditentukan.
-->Jika kunci tidak wujud dalam kamus maka ia tidak mengembalikannya.
fruits_menu = {'apple':100, 'banana':80, 'grapes':120} print(fruits_menu.get('apple',"not available")) print(fruits_menu.get('kiwi',"not available"))
Output:
100 not available
Cari kekerapan huruf dalam rentetan yang diberikan
#frequency of each letter in a given string freq = {} name = 'guruprasanna' for letter in name: freq[letter] = freq.get(letter,0)+1 print(freq)
Output:
{'g': 1, 'u': 2, 'r': 2, 'p': 1, 'a': 3, 's': 1, 'n': 2}
Untuk menukar kamus kepada set
csk = {'dhoni':101, 'jadeja':102} india = {'virat':103, 'jadeja':102} print(set(csk)) print(set(india)) print(set(csk.keys())) print(set(india.keys()))
Output:
{'dhoni', 'jadeja'} {'virat', 'jadeja'} {'dhoni', 'jadeja'} {'virat', 'jadeja'}
setdefault()
--> Kaedah setdefault() mengembalikan nilai item dengan kunci yang ditentukan.
--> Jika kunci tidak wujud, masukkan kunci, dengan nilai yang ditentukan.
csk = {'dhoni':101, 'jadeja':102} india = {'virat':103, 'jadeja':102} csk.setdefault('rohit',100) print(csk) csk.setdefault('dhoni',100) print(csk)
Output:
menu = {'idli':10, 'dosai':20, 'poori':30} print(menu) menu['pongal'] = 40 del menu['idli'] print(menu) print(menu['dosai'])
1. Cari:
a) Lazim dalam kedua-dua pasukan
b) Hadir dalam mana-mana satu pasukan
c) Jumlah nama Pemain
{'idli': 10, 'dosai': 20, 'poori': 30} {'dosai': 20, 'poori': 30, 'pongal': 40} 20
Output:
time_table = {} time_table['tamil'] = 10 time_table['english']= 10 print(time_table) print(time_table['tamil']) print(time_table.get('tamil')) print(time_table.get('maths')) print(time_table['maths'])
2. Cari kekerapan perkataan dalam rentetan- 'a rose is a rose is a rose'.
{'tamil': 10, 'english': 10} 10 10 None KeyError: 'maths'
Output:
menu = {'idli':10, 'dosai':20, 'poori':30} print(menu) print(menu.keys()) print(menu.values()) print(menu.items())
3. Cari jumlah, purata dan skor tinggi dalam kamus.
pemain = {'jaiswal':75, 'rohit':55, 'virat':95}
{'idli': 10, 'dosai': 20, 'poori': 30} dict_keys(['idli', 'dosai', 'poori']) dict_values([10, 20, 30]) dict_items([('idli', 10), ('dosai', 20), ('poori', 30)])
Output:
fruits_menu = {'apple':100, 'banana':80, 'grapes':120} for fruit in fruits_menu.keys(): print(fruit) for price in fruits_menu.values(): print(price) for fruit, price in fruits_menu.items(): print(fruit, price)
apple banana grapes 100 80 120 apple 100 banana 80 grapes 120
Output:
fruits_menu = {'apple':100, 'banana':80, 'grapes':120} for fruit in fruits_menu.keys(): if 'e' in fruit: print(fruits_menu[fruit])
Atas ialah kandungan terperinci Python Day-Kamus- Latihan, Tugasan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!