Kamus Python fromkeys ()

Kaedah fromkeys () membuat kamus baru dari urutan elemen yang diberikan dengan nilai yang diberikan oleh pengguna.

Sintaks fromkeys()kaedah adalah:

 kamus. dari kunci (urutan (, nilai))

fromkeys () Parameter

fromkeys() kaedah mengambil dua parameter:

  • urutan - urutan unsur yang akan digunakan sebagai kunci untuk kamus baru
  • nilai (Pilihan) - nilai yang ditetapkan untuk setiap elemen kamus

Nilai pulangan darikeykey ()

fromkeys() kaedah mengembalikan kamus baru dengan urutan elemen yang diberikan sebagai kunci kamus.

Sekiranya argumen nilai ditetapkan, setiap elemen kamus yang baru dibuat ditetapkan ke nilai yang diberikan.

Contoh 1: Buat kamus dari urutan kekunci

 # vowels keys keys = ('a', 'e', 'i', 'o', 'u' ) vowels = dict.fromkeys(keys) print(vowels)

Pengeluaran

 ('a': Tidak ada, 'u': Tidak ada, 'o': Tidak ada, 'e': Tiada, 'i': Tiada) 

Contoh 2: Buat kamus dari urutan kekunci dengan nilai

 # vowels keys keys = ('a', 'e', 'i', 'o', 'u' ) value = 'vowel' vowels = dict.fromkeys(keys, value) print(vowels)

Pengeluaran

 ('a': 'vokal', 'u': 'vokal', 'o': 'vokal', 'e': 'vokal', 'i': 'vokal') 

Contoh 3: Buat kamus dari senarai objek yang boleh berubah

 # vowels keys keys = ('a', 'e', 'i', 'o', 'u' ) value = (1) vowels = dict.fromkeys(keys, value) print(vowels) # updating the value value.append(2) print(vowels)

Pengeluaran

 ('a': (1), 'u': (1), 'o': (1), 'e': (1), 'i': (1)) ('a': (1, 2 ), 'u': (1, 2), 'o': (1, 2), 'e': (1, 2), 'i': (1, 2)) 

Sekiranya nilai adalah objek yang dapat diubah (yang nilainya dapat diubah) seperti senarai, kamus, dll., Apabila objek yang dapat diubah diubah, setiap elemen urutan juga akan diperbaharui.

Ini kerana setiap elemen diberikan rujukan ke objek yang sama (menunjuk ke objek yang sama dalam memori).

Untuk mengelakkan masalah ini, kami menggunakan pemahaman kamus.

 # vowels keys keys = ('a', 'e', 'i', 'o', 'u' ) value = (1) vowels = ( key : list(value) for key in keys ) # you can also use ( key : value(:) for key in keys ) print(vowels) # updating the value value.append(2) print(vowels)

Pengeluaran

 ('a': (1), 'u': (1), 'o': (1), 'e': (1), 'i': (1)) ('a': (1), 'u': (1), 'o': (1), 'e': (1), 'i': (1)) 

Di sini, untuk setiap kekunci, senarai baru dari nilai dibuat dan diberikan kepadanya.

Pada hakikatnya, nilai tidak diberikan kepada elemen tetapi senarai baru dibuat daripadanya, yang kemudian diberikan kepada setiap elemen dalam kamus.

Artikel menarik...