Jadual Kandungan
Gunakan kekunci dan kaedah indeks
Tatabahasa
Contoh
Output
Menggunakan modul OrderedDict
Gunakan kaedah kekunci() dan bendera
Kesimpulan
Rumah pembangunan bahagian belakang Tutorial Python Bagaimana untuk mendapatkan kunci seterusnya dalam kamus dalam Python?

Bagaimana untuk mendapatkan kunci seterusnya dalam kamus dalam Python?

Aug 28, 2023 pm 11:45 PM
python kamus kunci seterusnya

Bagaimana untuk mendapatkan kunci seterusnya dalam kamus dalam Python?

Kamus ialah jenis data yang berkuasa dalam Python. Ia terdiri daripada pasangan nilai kunci. Operasi carian, penambahan dan lain-lain boleh diselesaikan dengan cekap melalui jenis data ini. Walaupun mengakses nilai dalam kamus adalah mudah, mungkin terdapat situasi di mana anda perlu mencari kunci seterusnya dalam kamus. Python menyediakan beberapa cara untuk mencapai ini, bergantung pada keperluan khusus anda. Dalam artikel ini, kami akan meneroka cara yang berbeza untuk mendapatkan kunci seterusnya dalam kamus dalam Python.

Gunakan kekunci dan kaedah indeks

Kamus dalam Python ialah koleksi tidak tersusun. Oleh itu, kita perlu menukar kunci kepada beberapa bentuk yang disusun terlebih dahulu. Mula-mula kita boleh menambahkan semua kunci dalam bentuk senarai. Seterusnya, kita boleh mencari kunci seterusnya dengan mengindeks senarai. Dengan bantuan kunci, kami juga boleh mengakses nilai yang sepadan.

Tatabahasa

<dictionary name>.keys()
Salin selepas log masuk

Kaedah kunci ialah kaedah Python terbina dalam yang mengembalikan kunci dalam kamus. Ia mengembalikan objek paparan, yang boleh kita tukar kepada senarai menggunakan kaedah senarai Python. Objek paparan adalah dinamik, jadi sebarang perubahan pada kamus juga ditunjukkan dalam objek paparan.

<iterable object>.index(<name of the key>, start, end)
Salin selepas log masuk

Dalam Python, kaedah "indeks" ialah kaedah terbina dalam. Ia boleh digunakan pada jujukan boleh lelaran. Ia menerima satu parameter yang diperlukan, iaitu nilai yang indeksnya perlu kita cari dalam jujukan boleh lelar. Selain itu, ia menerima dua parameter pilihan, mula dan tamat, yang menentukan julat yang kita perlukan untuk mencari elemen. Ia mengembalikan integer yang mewakili kejadian pertama unsur dalam jujukan boleh lelar.

Contoh

Dalam kod di bawah, kami mula-mula mencipta kamus bernama my_dict. Kami mentakrifkan kunci semasa sebagai "pisang". Dalam kes ini, matlamat kami adalah untuk mencari kunci seterusnya "oren". Kami menggunakan kaedah kunci kamus untuk mendapatkan semua kunci kamus. Seterusnya, kami menggunakan kaedah indeks untuk mengakses indeks kunci semasa. Kami menyediakan pernyataan bersyarat di mana kami mencetak kunci yang indeksnya hanya 1 lebih besar daripada kunci semasa.

my_dict = {'apple': 1, 'banana': 2, 'orange': 3, 'kiwi': 4}
current_key = 'banana'
keys = list(my_dict.keys())
current_index = keys.index(current_key)
print("The next element to banana is: ", end="")
if current_index < len(keys) - 1:
    next_key = keys[current_index + 1]
    print(next_key)  
else:
    print("No next key found.")
Salin selepas log masuk

Output

The next element to banana is − orange
Salin selepas log masuk

Menggunakan modul OrderedDict

Cara lain untuk mendapatkan kunci seterusnya dalam kamus ialah menggunakan kelas OrderedDict daripada modul koleksi. OrderedDict membolehkan kami mencipta kamus dan mengulangi itemnya. Walau bagaimanapun, apabila menggunakan modul ini, perwakilan kamus adalah sangat berbeza berbanding dengan kamus tradisional. Item dibentangkan sebagai tupel.

Tatabahasa

OrderedDict([(key1, value1), (key2, value2), (key3, value3), other key-value pairs.....])
Salin selepas log masuk

'OrderedDict' ialah nama kelas kamus tertib yang disediakan oleh modul 'koleksi' Python. Kita perlu lulus semua pasangan nilai kunci sebagai objek tuple dengan koma yang memisahkan objek tuple. Kita boleh mempunyai berbilang objek tuple dan objek kamus ini boleh diubah.

Contoh

Dalam kod ini, kami mula-mula mengimport modul OrderedDict daripada perpustakaan koleksi Python. Seterusnya, kami mentakrifkan kamus kami. Ambil perhatian bahawa pasangan nilai kunci dipisahkan dengan koma dan disertakan dalam tuple. Kemudian, kami menetapkan bendera pembolehubah found_current_key kepada false. Kami mengulangi kamus dan mengemas kini nilai pembolehubah next_key. Pembolehubah ini mengandungi hasil yang kita perlukan. Ambil perhatian bahawa kami menggunakan OrderedDict, jadi kamus kini boleh diubah.

from collections import OrderedDict
my_dict = OrderedDict([('apple', 1), ('banana', 2), ('orange', 3), ('kiwi', 4)])
current_key = 'orange'
next_key = None
found_current_key = False
print("The next element to banana is: ", end="")
for key in my_dict:
    if found_current_key:
        next_key = key
        break
    if key == current_key:
        found_current_key = True
print(next_key)  
Salin selepas log masuk

Output

The next element to banana is: kiwi
Salin selepas log masuk

Gunakan kaedah kekunci() dan bendera

Jika anda tidak perlu mengekalkan susunan kekunci, pendekatan mudah ialah menggunakan kaedah kekunci() kamus dan pembolehubah bendera untuk menjejaki kunci semasa. Ideanya adalah untuk mengulangi kekunci kamus dan jika kunci semasa ditemui, kemas kini nilai kunci seterusnya. Sila ambil perhatian bahawa jika kami menggunakan kaedah kekunci Python, kami akan mendapat semua kunci dalam bentuk senarai. Senarai ini boleh lelaran, jadi kami boleh melakukan lelaran ini.

Contoh

Dalam kod di bawah, kami mencipta kamus dan menetapkan nilai current_key kepada "epal". Seterusnya, kami menetapkan nilai pembolehubah next_key kepada False. Kami mengulangi kekunci kamus. Kami menggunakan pernyataan bersyarat. Pernyataan bersyarat menyemak sama ada bendera found_current_key adalah benar dan jika demikian memberikan kunci semasa kepada next_key, sekali gus memecahkan gelung. Bendera found_current_key adalah benar jika kunci semasa adalah sama dengan current_key.

my_dict = {'apple': 1, 'banana': 2, 'orange': 3, 'kiwi': 4}
current_key = 'apple'
next_key = None
found_current_key = False
print("The next element to banana is: ", end="")
for key in my_dict.keys():
    if found_current_key:
        next_key = key
        break
    if key == current_key:
        found_current_key = True
print(next_key) 
Salin selepas log masuk

Output

The next element to banana is: banana
Salin selepas log masuk

Kesimpulan

Dalam artikel ini, kami belajar cara mendapatkan kunci seterusnya dalam kamus dalam Python. Kami boleh menggunakan sifat lelaran senarai atau tupel untuk mengumpul semua kunci kamus dan mencari kunci tersedia seterusnya. Python juga membekalkan kami modul Ordered Dict yang dengannya kami boleh dengan mudah mengulangi item kamus. Modul ini memberi kami keupayaan untuk mencipta kamus berulang. Akhir sekali, kita boleh menggunakan kunci dan bendera untuk mencapai tujuan yang sama.

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan kunci seterusnya dalam kamus dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk menyelesaikan masalah kebenaran yang dihadapi semasa melihat versi Python di Terminal Linux? Bagaimana untuk menyelesaikan masalah kebenaran yang dihadapi semasa melihat versi Python di Terminal Linux? Apr 01, 2025 pm 05:09 PM

Penyelesaian kepada Isu Kebenaran Semasa Melihat Versi Python di Terminal Linux Apabila anda cuba melihat versi Python di Terminal Linux, masukkan Python ...

Apakah sebabnya mengapa fail penyimpanan berterusan saluran paip tidak dapat ditulis apabila menggunakan crawler scapy? Apakah sebabnya mengapa fail penyimpanan berterusan saluran paip tidak dapat ditulis apabila menggunakan crawler scapy? Apr 01, 2025 pm 04:03 PM

Apabila menggunakan crawler scapy, sebab mengapa fail penyimpanan berterusan paip tidak boleh ditulis? Perbincangan Ketika belajar menggunakan Crawler Scapy untuk Crawler Data, anda sering menemui ...

Python Hourglass Graph Lukisan: Bagaimana untuk mengelakkan kesilapan yang tidak ditentukan? Python Hourglass Graph Lukisan: Bagaimana untuk mengelakkan kesilapan yang tidak ditentukan? Apr 01, 2025 pm 06:27 PM

Bermula dengan Python: Lukisan Grafik Hourglass dan Pengesahan Input Artikel ini akan menyelesaikan masalah definisi berubah -ubah yang dihadapi oleh pemula python dalam program lukisan grafik Hourglass. Kod ...

Apakah sebabnya mengapa Pool Proses Python mengendalikan permintaan TCP serentak dan menyebabkan pelanggan terjebak? Apakah sebabnya mengapa Pool Proses Python mengendalikan permintaan TCP serentak dan menyebabkan pelanggan terjebak? Apr 01, 2025 pm 04:09 PM

Proses Python Pool mengendalikan permintaan TCP serentak yang menyebabkan pelanggan terjebak. Apabila menggunakan Python untuk pengaturcaraan rangkaian, adalah penting untuk mengendalikan permintaan TCP serentak dengan cekap. …

Bagaimana untuk melihat fungsi asal yang terkandung secara dalaman oleh python funcools.partial Object? Bagaimana untuk melihat fungsi asal yang terkandung secara dalaman oleh python funcools.partial Object? Apr 01, 2025 pm 04:15 PM

Sangat meneroka kaedah tontonan python funcools.partial Object in Funcools.Partial Menggunakan Python ...

Pembangunan Aplikasi Desktop Cross-Platform Python: Perpustakaan GUI mana yang terbaik untuk anda? Pembangunan Aplikasi Desktop Cross-Platform Python: Perpustakaan GUI mana yang terbaik untuk anda? Apr 01, 2025 pm 05:24 PM

Pilihan Perpustakaan Pembangunan Aplikasi Desktop Python Python Banyak pemaju Python ingin membangunkan aplikasi desktop yang boleh dijalankan pada kedua-dua sistem Windows dan Linux ...

Bagaimana cara menyalin seluruh lajur satu data ke dalam data data lain dengan struktur yang berbeza di Python? Bagaimana cara menyalin seluruh lajur satu data ke dalam data data lain dengan struktur yang berbeza di Python? Apr 01, 2025 pm 11:15 PM

Apabila menggunakan Perpustakaan Pandas Python, bagaimana untuk menyalin seluruh lajur antara dua data data dengan struktur yang berbeza adalah masalah biasa. Katakan kita mempunyai dua DAT ...

Adakah Google dan AWS menyediakan sumber imej Pypi awam? Adakah Google dan AWS menyediakan sumber imej Pypi awam? Apr 01, 2025 pm 05:15 PM

Ramai pemaju bergantung kepada PYPI (PythonPackageIndex) ...

See all articles