Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Program Python untuk membandingkan elemen dalam dua kamus

Program Python untuk membandingkan elemen dalam dua kamus

王林
王林ke hadapan
2023-08-20 19:25:061554semak imbas

Program Python untuk membandingkan elemen dalam dua kamus

Kamus ialah jenis data yang berkuasa dalam Python yang membolehkan anda menyimpan data sebagai pasangan nilai kunci Dalam artikel ini, kita akan membincangkan cara membandingkan elemen dalam dua kamus dalam Python elemen kamus dan akan memberikan contoh bagaimana untuk berbuat demikian.

Kamus dalam Python

Dalam Python, kamus boleh dibuat dengan meletakkan satu siri elemen di dalam kurung kerinting { }, dipisahkan dengan koma (,). Kamus memegang pasangan nilai kunci, di mana satu adalah kunci dan satu lagi adalah nilai yang sepadan.

Nilai dalam kamus boleh dari mana-mana jenis data dan boleh diduplikasi, manakala kunci tidak boleh diulang dan mestilah tidak boleh diubah dan unik Nama kunci dalam kamus adalah sensitif huruf besar fungsi terbina dalam dict(). Kamus kosong boleh dibuat dengan hanya meletakkan pada kurungan kerinting { }.

Kami boleh mengisytiharkan kamus dengan cara berikut −

thisdict = { "brand": "Ford", "model": "Mustang", year": 1964 }

Dalam artikel ini, kita akan melihat cara membandingkan elemen dua kamus dalam Python menggunakan 3 kaedah berbeza.

Gunakan operator tanda sama rata ( = = )

Dalam kaedah ini, kami akan menggunakan operator perbandingan tanda sama berganda untuk membandingkan dua string. Operator == mengembalikan benar apabila bahagian kiri dan kanan operator adalah sama, dan mengembalikan palsu apabila ia tidak sama.

Jika 2 kamus yang diberikan kepada kita adalah sama dan sama antara satu sama lain, operator ini akan kembali benar dan kita boleh membuat kesimpulan bahawa kedua-dua kamus itu adalah sama Dan ia akan kembali palsu jika tidak sama.

Contoh

Dalam contoh di bawah, kami menggunakan operator == untuk membandingkan 2 kamus

dict1 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'mango' }
dict2 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'grapes'}
if dict1 == dict2:
   print (" dict1 is equal to dict2 ")
else:
   print (" dict1 is not equal to dict2 ")

Output

Output untuk kod di atas ialah –

dict1 is not equal to dict2

Bandingkan dua kamus menggunakan gelung

Dalam kaedah ini, kami akan membandingkan elemen dua kamus satu demi satu, dengan mengulang panjang satu kamus dan dalam setiap lelaran menyemak kunci dan nilai dalam kamus yang sepadan berbanding dengan pasangan kunci dan nilai yang sepadan dalam kamus lain .

Kami juga akan menyemak panjang kedua-dua kamus dan jika tidak sama, kami boleh membuat kesimpulan secara langsung bahawa kedua-dua kamus itu tidak sama. Untuk mendapatkan nilai yang sepadan dengan kunci dalam kamus, kami menggunakan fungsi .get, yang memberikan nilai kunci sebagai argumen.

Contoh

Dalam contoh di bawah, kami akan.

dict1 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'mango' }
dict2 = { 'first' : 'banana' , 'second' : 'guava' , 'third' : 'grapes'}
if len (dict1) != len (dict2):
    print ("The dictionaries are not equal ")
else:
    flag=0
    for i in dict1:
        if dict1.get(i) != dict2.get(i):
            flag=1
            break
    if flag==0:
        print (" dict1 is equal to dict2 ")
    else:
        print (" dict1 is not equal to dict2 ")

Output

Keluaran program di atas adalah seperti berikut:

dict1 is not equal to dict2

Gunakan kaedah pemahaman senarai

Dalam kaedah ini, kami akan menggunakan pemahaman senarai untuk membandingkan dua kamus Pemahaman senarai adalah cara yang lebih pendek untuk menulis gelung untuk dalam senarai, tuple atau kamus Dalam kaedah ini, kami akan mengulangi salah satu kamus dan membandingkan jika nilainya untuk kunci yang sama dalam kedua-dua kamus adalah sama atau tidak Jika mereka sama, kamus akan sama dan tidak sama daripada mereka tidak sama

Contoh

Kod python di bawah menunjukkan cara kita boleh menggunakan pemahaman senarai untuk membandingkan dua kamus yang diberikan dan mencetak hasilnya.

dict1 = { 'first' : 'apple' , 'second' : 'orange' , 'third' : 'mango' }
dict2 = { 'first' : 'banana' , 'second' : 'guava' , 'third' : 'grapes' }
ans = all ( dict2.get (key) == value for key , value in dict1.items() )
if ans == 'true':
   print ("dict1 and dict2 are equal")
else:
   print ("dict1 and dict2 are not equal")

Output

Keluaran kod di atas adalah seperti berikut:

dict1 and dict2 are not equal

Kesimpulan

Dalam artikel ini, kami mendapat tahu tentang kamus dalam ular sawa, di mana kami boleh menggunakan kamus juga bagaimana kami boleh membandingkan 2 kamus yang diberikan Kami menemui 3 kaedah yang berbeza untuk membandingkan 2 kamus

Kaedah pertama melibatkan penggunaan operator kesamaan ( ==). Kaedah kedua melibatkan penggunaan lelaran untuk menyemak setiap pasangan nilai kunci kedua-dua kamus Dalam kaedah terakhir kami menggunakan kaedah pemahaman senarai python untuk mengulangi kekunci nilai pasangan satu kamus dan semak nilai untuk kunci dalam kedua-dua kamus dan bandingkannya

Kerumitan masa bagi pendekatan 1

st

ialah O (1) kerana ia menggunakan perbandingan mudah Manakala 2 lagi kaedah mempunyai kerumitan masa O (n) di mana n ialah panjang kamus.

Atas ialah kandungan terperinci Program Python untuk membandingkan elemen dalam dua kamus. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam