Pada bagian sebelumnya, kita telah mempelajari tentang metode kamus. Pada bab ini, kita akan mempelajari tentang kamus hibrid, penjelajahan kamus, dan derivasi kamus.
Yang disebut kamus campuran berarti bahwa data yang disimpan dalam kamus adalah campuran dari berbagai tipe. Kuncinya harus berupa tipe data yang tidak dapat diubah, tetapi nilainya dapat berupa objek jenis apa pun.
Pertama mari kita lihat kamus campuran:
my_dcit={'Xiao Ming': ['Tinggi: 170cm', 'Berat: 65kg'], 'Xiao Li': 'Suka belajar, suka olahraga', 'Xiaohua': ('Tempat Tinggal: Suzhou', 'Tempat Lahir :Shanghai ')}
Nilai kamus ini terdiri dari daftar, string, dan tupel. Kita dapat mengakses kamus campuran ini melalui metode di bagian sebelumnya. Lihatlah potongan kode berikut
my_dcit={'Xiao Ming': ['Tinggi: 170cm', 'Berat: 65kg'], 'Xiao Li': 'Suka belajar, suka olahraga', 'Xiaohua': ('Tempat Tinggal: Suzhou', 'Tempat Lahir :Shanghai ')}print('Kunci akses='Xiao Ming'->',my_dcit['Xiao Ming'])print('Kunci akses='Xiaohua'->',my_dcit['Xiao Li'])print(' Akses key='Xiaohua'->',my_dcit['Xiaohua'])print('itmes() metode:',my_dcit.items())#Akses keseluruhan print('keys() metode:',my_dcit.keys() )#Hanya mengakses semua metode keyprint('values():',my_dcit.values())#Hanya mengakses metode valueprint('get():',my_dcit.get('Xiao Ming'))#get untuk mengakses key yang ditentukan my_dcit.pop('Xiao Ming') #Langkah ini adalah metode pop(), yang akan menghapus elemen berpasangan dengan key = 'Xiao Ming' print('my_dict setelah metode pop(): ', my_dcit) # Lihat Kamus setelah penghapusan
Lihatlah hasilnya:
Kunci akses='Xiao Ming'->['Tinggi: 170cm', 'Berat: 65kg'] Kunci akses='Xiaohua'->Suka belajar, suka olahraga kunci akses='Xiaohua'->('Tempat Tinggal: Suzhou ', 'Tempat Lahir: Shanghai') itmes() metode: dict_items([('Xiao Ming', ['Tinggi: 170cm', 'Berat: 65kg']), ('Xiao Li', 'Suka belajar, suka olahraga' ), ('Xiaohua',('Tempat Tinggal: Suzhou', 'Tempat Lahir: Shanghai'))])keys() metode: dict_keys(['Xiaoming','Xiaoli','Xiaohua'])values () metode: dict_values([ ['Tinggi: 170cm', 'Berat: 65kg'], 'Suka belajar, suka olahraga', ('Tempat Tinggal: Suzhou', 'Tempat Lahir: Shanghai')]) metode get() :['Tinggi: 170cm', ' Berat: 65kg'] my_dict setelah pop() metode: {'Xiao Li': 'Suka belajar, suka olahraga', 'Xiaohua': ('Tempat Tinggal: Suzhou',' Tempat lahir: Shanghai')}
Saat kita menggunakan kamus, kita sering kali perlu menelusuri kamus. Biasanya kita menggunakan perulangan for untuk menelusuri semua kunci dalam kamus.
Mari kita lihat akses traversal secara umum:
>>>my_dict={1001:'Xiaoming',1002:'Xiaohua',1003:'Xiaozhang'}>>>foriinmy_dict:print(i,my_dict[i])#Kunci keluaran dan nilai yang sesuai dengan kunci 1001Xiao Ming 1002 Xiaohua 1003 Xiao Zhang
Kita juga akan menggunakan metode items() untuk mendapatkan pasangan elemen saat mendapatkan objek.
>>>my_dict={1001:'Xiao Ming',1002:'Xiao Hua',1003:'Xiao Zhang'}>>>foriinmy_dict.items():print(i)(1001,'Xiao Ming')(1002 ,' Xiaohua')(1003,'Xiao Zhang')
Metode akses ini adalah sepasang data dalam kamus yang berlawanan, dan hasil keluarannya berupa keluaran dalam bentuk tuple. Pada saat yang sama, kunci dan nilai dari setiap traversal dapat langsung diperoleh melalui loop traversal.
>>>my_dict={1001:'Xiao Ming',1002:'Xiao Hua',1003:'Xiao Zhang'}>>>fori,jinmy_dict.items():print('kunci yang sesuai:',i,'sesuai nilai :',j) Kunci yang sesuai: 1001 Nilai yang sesuai: Xiao Ming Kunci yang sesuai: 1002 Nilai yang sesuai: Xiao Hua Kunci yang sesuai: 1003 Nilai yang sesuai: Xiao Zhang
Terakhir, latih penjelajahan kamus melalui latihan.
Saya telah mempelajari derivasi daftar sebelumnya. Derivasi tuple mirip dengan derivasi daftar tanpa banyak pengenalan, karena kamus relatif khusus.
Mari kita lihat penggunaan sederhananya terlebih dahulu.
>>>perintah_saya={i:'dotcpp'foriinrange(1,5)}>>>perintah_saya{1:'dotcpp',2:'dotcpp',3:'dotcpp',4:'dotcpp'}
Di sini kita melihat struktur derivasi kamus. Bagian pertama setara dengan menggunakan 'dotcpp' untuk menetapkan objek nilai setiap i. Kita juga dapat mendefinisikan daftar terlebih dahulu dan menetapkan nilai dalam daftar ke dalamnya.
>>>daftar_saya=[10,20,30,40,50]>>>dikt_saya={i:daftar_saya[i]foriinrange(1,5)}>>>dikt_saya{1:20,2:30,3: 40,4:50}
Lihatlah gambar di bawah ini:
Saat menggunakan derivasi kamus, masalah utamanya adalah pencocokan kunci dan nilai. Setelah kita mempelajari fungsinya nanti, kita dapat menggunakan fungsi zip() untuk menggabungkan kamus dengan lebih mudah. Kami tidak akan memperkenalkannya terlalu banyak di sini.
Pengguna diharuskan memasukkan total aset, misalnya: 3000, maka ditampilkan daftar keranjang belanja, dan dihitung jumlah total barang dalam keranjang belanja. Jika jumlah total barang lebih besar dari total aset, ini akan menunjukkan bahwa saldo akun tidak mencukupi. Daftar keranjang belanjanya adalah sebagai berikut: cart=[{name: bed, price: 1999, "num": 1}, {name: Pillow, price: 10, " num ": 2}, {name: quilt, price: 20, " nomor”:1}].
Solusinya ada di akhir.
Kamus adalah struktur data yang relatif umum digunakan saat mempelajari Python. Namun, karena keunikannya, mungkin hanya ada sedikit kata tentang kamus dalam pertanyaan kompetisi, tetapi lebih banyak dalam pembelajaran dan inspeksi kursus Python menemukan data terkait secara akurat, dan menguasai daftar serta kamus dengan baik dapat membantu kita mempelajari Python dengan lebih baik.
gerobak=[{nama:tempat tidur,harga:1999,"num":1},{nama:bantal,harga:10,"num":2},{name:quilt,price:20,"num":1} ]. m=int(input())sum=0foriinrange(len(gerobak)):sum=gerobak[i]['harga']*gerobak[i]['angka']+sumifm>=jumlah:print('Pembelian berhasil ')else:print('Saldo rekening tidak mencukupi')