Maaf untuk pertanyaan dasar ini tetapi pencarian saya pada ini tidak menghasilkan apa-apa selain cara mendapatkan kunci kamus berdasarkan nilainya yang saya lebih suka tidak menggunakan karena saya hanya ingin teks / nama kunci dan saya khawatir bahwa pencarian menurut nilai dapat berakhir dengan mengembalikan 2 kunci atau lebih jika kamus memiliki banyak entri ... apa yang saya coba lakukan adalah ini:
mydictionary={'keyname':'somevalue'}
for current in mydictionary:
result = mydictionary.(some_function_to_get_key_name)[current]
print result
"keyname"
Alasan untuk ini adalah bahwa saya mencetak ini ke dokumen dan saya ingin menggunakan nama kunci dan nilai dalam melakukan ini
Saya telah melihat metode di bawah ini tetapi ini sepertinya hanya mengembalikan nilai kunci
get(key[, default])
python
dictionary
key
Rick
sumber
sumber
current
adalah kunci saat ini, lakukan sajaprint current
Jawaban:
Anda harus beralih ke kunci dengan:
sumber
for key in mydictionary:
print (f"key: {key}, value: {mydictionary[key]}")
Jika Anda ingin mencetak kunci dan nilai, gunakan yang berikut ini:
sumber
Berdasarkan persyaratan di atas inilah yang akan saya sarankan:
sumber
my_dict.item()
atau daftar pemahaman sepertikeys = list(my_dict.keys)
tetapi kalau-kalau ada seseorang yang ingin melakukan ini di Python 3: (baris 2)keys = sorted(my_dict.keys())
+ add () untuk mencetak.Jika kamus berisi satu pasang seperti ini:
maka Anda bisa mendapatkan
Untuk Python 3.5, lakukan ini:
sumber
TypeError: 'dict_items' object does not support indexing
key = list(d.keys())[0]
next()
lebih baik sesuai dengan: stackoverflow.com/a/27638751/1488445keys=[i for i in mydictionary.keys()]
ataukeys = list(mydictionary.keys())
sumber
Sesimpel itu:
Anda akan memodifikasi kamus Anda dan membuat salinannya terlebih dahulu
sumber
Anda cukup menggunakan
*
yang membongkar kunci kamus. Contoh:sumber
Iterate over dictionary (i) akan mengembalikan kunci, lalu menggunakannya (i) untuk mendapatkan nilainya
sumber
Untuk python 3 Jika Anda hanya ingin mendapatkan kunci gunakan ini. Ganti cetak (kunci) dengan cetak (nilai) jika Anda menginginkan nilainya.
sumber
Apa yang kadang-kadang saya lakukan adalah saya membuat kamus lain hanya untuk dapat apa pun yang saya rasa perlu saya akses sebagai string. Kemudian saya mengulangi beberapa kamus kunci pencocokan untuk membangun misalnya tabel dengan kolom pertama sebagai deskripsi.
Anda dapat dengan mudah melakukannya untuk sejumlah besar kamus untuk mencocokkan data (Saya suka fakta bahwa dengan kamus Anda selalu dapat merujuk pada sesuatu yang dikenal sebagai nama kunci)
ya saya menggunakan kamus untuk menyimpan hasil fungsi jadi saya tidak perlu menjalankan fungsi ini setiap kali saya memanggil mereka hanya sekali dan kemudian mengakses hasilnya kapan saja.
EDIT: dalam contoh saya nama kunci tidak terlalu penting (saya pribadi suka menggunakan nama kunci yang sama karena lebih mudah untuk memilih satu nilai dari kamus yang cocok), pastikan jumlah kunci di setiap kamus adalah sama
sumber
Anda dapat melakukan ini dengan melemparkan kunci dan nilai dict ke daftar. Itu juga bisa dilakukan untuk item.
Contoh:
sumber
mudah mengubah posisi kunci dan nilai Anda, lalu gunakan nilai untuk mendapatkan kunci, dalam kunci kamus dapat memiliki nilai yang sama tetapi mereka (kunci) harus berbeda. misalnya jika Anda memiliki daftar dan nilai pertama adalah kunci untuk masalah Anda dan nilai lainnya adalah spesifikasi dari nilai pertama:
Anda dapat menyimpan dan menggunakan data dengan mudah dalam Kamus dengan loop ini:
maka Anda dapat menemukan kunci (nama) berdasarkan nilai input apa pun.
sumber