Konversi daftar string ke kamus python

Daftar dan kamus Python adalah dua struktur data dalam Python yang digunakan untuk menyimpan data. Daftar Python adalah urutan objek yang diurutkan, sedangkan kamus tidak diurutkan. Item dalam daftar dapat diakses dengan indeks (berdasarkan posisinya) sedangkan item dalam kamus dapat diakses dengan kunci dan bukan dengan posisinya

Mari kita lihat cara mengonversi daftar Python ke kamus

Sepuluh cara berbeda untuk mengonversi daftar Python ke kamus

  1. Mengubah daftar tupel menjadi kamus
  2. Mengubah dua daftar dengan panjang yang sama menjadi kamus
  3. Mengubah dua daftar dengan panjang berbeda menjadi kamus
  4. Mengubah daftar kunci alternatif, nilai item ke kamus
  5. Mengubah daftar kamus menjadi satu kamus
  6. Mengubah daftar menjadi kamus menggunakan enumerate()
  7. Mengubah daftar menjadi kamus menggunakan pemahaman kamus
  8. Mengubah daftar menjadi kamus menggunakan dict. fromkeys()
  9. Mengubah daftar bersarang menjadi kamus menggunakan pemahaman kamus
  10. Mengubah daftar menjadi kamus menggunakan Counter()

1. Mengubah Daftar Tuple menjadi Kamus

Konstruktor

itertools.zip_longest(*iterables,fillvalue=None)
0 membangun kamus langsung dari urutan pasangan kunci-nilai

#Converting list of tuples to dictionary by using dict() constructor
color=[('red',1),('blue',2),('green',3)]
d=dict(color)
print (d)#Output:{'red': 1, 'blue': 2, 'green': 3}
_

2. Mengonversi Dua Daftar dengan Panjang yang Sama menjadi Kamus

Kita dapat mengonversi dua daftar dengan panjang yang sama ke kamus menggunakan

itertools.zip_longest(*iterables,fillvalue=None)
1

itertools.zip_longest(*iterables,fillvalue=None)
1 akan mengembalikan iterator tupel. Kita dapat mengonversi objek zip itu menjadi kamus menggunakan konstruktor
itertools.zip_longest(*iterables,fillvalue=None)
0

zip()

Buat iterator yang menggabungkan elemen dari masing-masing iterables

itertools.zip_longest(*iterables,fillvalue=None)
_4. Mengembalikan iterator tupel, di mana tupel ke-i berisi elemen ke-i dari setiap urutan argumen atau iterables. Iterator berhenti ketika input iterable terpendek habis. Dengan satu argumen iterable, ia mengembalikan iterator 1-tupel. Tanpa argumen, ia mengembalikan iterator kosong. ” — Piton

Contoh

Menggunakan zip()

Sumber gambar. Pengarang

3. Mengubah Dua Daftar dengan Panjang Berbeda menjadi Kamus

Kita dapat mengonversi dua daftar dengan panjang berbeda ke kamus menggunakan

itertools.zip_longest(*iterables,fillvalue=None)
5

Sesuai

itertools.zip_longest(*iterables,fillvalue=None)
_6. Membuat iterator yang mengumpulkan elemen dari masing-masing iterables. Jika iterable memiliki panjang yang tidak rata, nilai yang hilang diisi dengan nilai isian. Iterasi berlanjut hingga iterable terpanjang habis
Di zip(), iterasi berlanjut hingga iterable terpendek habis. ”

itertools.zip_longest(*iterables,fillvalue=None)

Menggunakan

itertools.zip_longest(*iterables,fillvalue=None)
_1, iterasi berlanjut hingga iterable terpendek habis

Menggunakan zip()

Menggunakan

itertools.zip_longest(*iterables,fillvalue=None)
_6, iterasi berlanjut sampai iterable terlama habis. Secara default,
itertools.zip_longest(*iterables,fillvalue=None)
_9 adalah
s[i:j:k] — slice of s from i to j with step k
0

Menggunakan zip_longest()

Gambar oleh Penulis

itertools.zip_longest(*iterables,fillvalue=None)
_9 disebut sebagai x

Menggunakan zip_longest()

4. Mengonversi Daftar Kunci Alternatif, Item Nilai ke Kamus

Kami dapat mengonversi daftar kunci alternatif, nilai sebagai item ke kamus menggunakan pemotongan

Mengiris mengembalikan daftar baru yang berisi urutan item dari daftar. Kami dapat menentukan rentang indeks

s[i:j:k] — slice of s from i to j with step k

Kita dapat membuat dua daftar irisan. Daftar pertama hanya berisi kunci dan daftar berikutnya berisi nilai saja

l1=[1,'a',2,'b',3,'c',4,'d']

Buat dua objek irisan dari daftar ini

Objek irisan pertama akan berisi kunci saja

s[i:j:k] — slice of s from i to j with step k
2

s[i:j:k] — slice of s from i to j with step k
3 tidak disebutkan. Secara default, ini akan dimulai dari awal daftar

s[i:j:k] — slice of s from i to j with step k
4 tidak disebutkan. Secara default, ini akan berhenti di akhir daftar

s[i:j:k] — slice of s from i to j with step k
4 disebutkan sebagai 2

s[i:j:k] — slice of s from i to j with step k
2 Mengembalikan daftar yang berisi elemen dari awal hingga akhir menggunakan langkah 2 (elemen alternatif)

[1,2,3,4]

Sumber gambar. Pengarang

Objek irisan kedua akan berisi nilai saja

l1=[1,'a',2,'b',3,'c',4,'d']

s[i:j:k] — slice of s from i to j with step k
7

s[i:j:k] — slice of s from i to j with step k
3 disebutkan sebagai 1. Ini akan mulai mengiris dari indeks pertama

s[i:j:k] — slice of s from i to j with step k
4 tidak disebutkan. Itu akan berhenti di akhir daftar

l1=[1,'a',2,'b',3,'c',4,'d']
0 disebutkan sebagai 2

l1=[1,'a',2,'b',3,'c',4,'d']
1] Mengembalikan daftar yang berisi elemen dari indeks pertama hingga akhir menggunakan langkah 2 (elemen alternatif)

['a', 'b', 'c', 'd']

Sumber Gambar. Pengarang

Sekarang kita dapat menggabungkan kedua daftar tersebut menggunakan fungsi

itertools.zip_longest(*iterables,fillvalue=None)
1

Mengubah daftar menjadi kamus menggunakan Slicing

5. Mengubah Daftar Kamus menjadi Kamus Tunggal

Daftar kamus dapat diubah menjadi satu kamus dengan cara berikut

  • l1=[1,'a',2,'b',3,'c',4,'d']
    _3
  • pemahaman kamus
  • l1=[1,'a',2,'b',3,'c',4,'d']
    4

dikt. memperbarui()

Kami dapat mengonversi daftar kamus menjadi satu kamus menggunakan

l1=[1,'a',2,'b',3,'c',4,'d']
3

  • Buat kamus kosong
  • Ulangi daftar kamus menggunakan loop
    l1=[1,'a',2,'b',3,'c',4,'d']
    6
  • Sekarang perbarui setiap item (pasangan kunci-nilai) ke kamus kosong menggunakan
    l1=[1,'a',2,'b',3,'c',4,'d']
    3

Menggunakan dikt. memperbarui()

Pemahaman kamus

Pemahaman kamus terdiri dari tanda kurung

l1=[1,'a',2,'b',3,'c',4,'d']
_8 berisi dua ekspresi yang dipisahkan dengan titik dua diikuti oleh klausa
l1=[1,'a',2,'b',3,'c',4,'d']
6, kemudian nol atau lebih
l1=[1,'a',2,'b',3,'c',4,'d']
6 atau
[1,2,3,4]
1 klausa

l1=[{1:'a',2:'b'},{3:'c',4:'d'}]
d1={k:v for e in l1 for (k,v) in e.items()}

[1,2,3,4]
2 — Mengembalikan setiap item dalam daftar
[1,2,3,4]
3

[1,2,3,4]
4 — Mengembalikan kunci, pasangan nilai dalam item tersebut.
[1,2,3,4]
5
[1,2,3,4]
6

[1,2,3,4]
7— diperbarui dalam kamus d1

Pemahaman kamus

Koleksi. Peta Rantai

Dengan menggunakan

[1,2,3,4]
_8, kita dapat mengonversi daftar kamus menjadi satu kamus

Sesuai dengan

[1,2,3,4]
9. ChainMap mengelompokkan beberapa kamus atau pemetaan lain bersama-sama untuk membuat satu tampilan yang dapat diperbarui. ”

Jenis pengembaliannya adalah

l1=[1,'a',2,'b',3,'c',4,'d']
0. Kita dapat mengonversi ke kamus menggunakan konstruktor
itertools.zip_longest(*iterables,fillvalue=None)
0

6. Mengubah Daftar menjadi Kamus Menggunakan Enumerate()

Dengan menggunakan

l1=[1,'a',2,'b',3,'c',4,'d']
_2, kita dapat mengonversi daftar menjadi kamus dengan indeks sebagai kunci dan item daftar sebagai nilainya

l1=[1,'a',2,'b',3,'c',4,'d']
2 akan mengembalikan objek enumerate

Kita dapat mengonversi ke dict menggunakan konstruktor

itertools.zip_longest(*iterables,fillvalue=None)
0

Sesuai dengan

l1=[1,'a',2,'b',3,'c',4,'d']
_5. Mengembalikan objek enumerasi. iterable harus berupa urutan, terator, atau objek lain yang mendukung iterasi. The
l1=[1,'a',2,'b',3,'c',4,'d']
6 metode iterator yang dikembalikan oleh
l1=[1,'a',2,'b',3,'c',4,'d']
2 mengembalikan tuple yang berisi hitungan (dari awal yang defaultnya ke 0) dan nilai yang diperoleh dari iterasi selama iterable

menghitung()

7. Mengubah Daftar Menjadi Kamus Menggunakan Pemahaman Kamus

Dengan menggunakan pemahaman kamus, kita dapat mengubah daftar kunci menjadi kamus yang memiliki nilai yang sama

d1={k:"a" for k in l1}

Itu akan beralih melalui daftar dan mengubah itemnya sebagai kunci (

l1=[1,'a',2,'b',3,'c',4,'d']
8), dan nilainya akan menjadi
l1=[1,'a',2,'b',3,'c',4,'d']
9 untuk semua kunci

8. Mengubah Daftar menjadi Kamus Menggunakan dict. fromkeys()

['a', 'b', 'c', 'd']
0 akan menerima daftar kunci, yang diubah menjadi kunci kamus, dan nilai, yang akan ditetapkan

Nilai yang sama akan diberikan ke semua kunci

9. Mengonversi Daftar Bersarang ke Kamus Menggunakan Pemahaman Kamus

Kita dapat mengonversi daftar bersarang menjadi kamus dengan menggunakan pemahaman kamus

['a', 'b', 'c', 'd']
1

Ini akan beralih melalui daftar

Ini akan mengambil item pada indeks 0 sebagai kunci dan indeks 1 sebagai nilai

10. Mengubah Daftar menjadi Kamus Menggunakan Penghitung ()

['a', 'b', 'c', 'd']
_2. Counter adalah subclass dict untuk menghitung objek hashable. Ini adalah kumpulan tempat elemen disimpan sebagai kunci kamus dan hitungannya disimpan sebagai nilai kamus. Hitungan diperbolehkan berupa nilai bilangan bulat apa pun termasuk hitungan nol atau negatif. ” — Piton

collections.Counter(iterable-or-mapping)

['a', 'b', 'c', 'd']
3 akan mengonversi item daftar menjadi kunci dan frekuensinya menjadi nilai

Menangkal()

Link blog saya yang lain

15 Hal yang Perlu Diketahui untuk Menguasai Kamus Python

25 Pertanyaan Teratas di Daftar Python

7 Cara Berbeda untuk Menggabungkan Kamus dengan Python

Menggabungkan Daftar dengan Python

Sumber daya

Tonton ruang ini untuk lebih banyak artikel tentang Python dan Ilmu Data. Jika Anda ingin membaca lebih banyak tutorial saya, ikuti saya di Medium, LinkedIn, Twitter

Bagaimana cara mengonversi daftar string ke kamus dengan Python?

Untuk mengubah daftar menjadi kamus menggunakan nilai yang sama, Anda dapat menggunakan dict. metode fromkeys() . Untuk mengonversi dua daftar menjadi satu kamus, Anda dapat menggunakan fungsi Python zip(). Pemahaman kamus memungkinkan Anda membuat kamus baru berdasarkan nilai daftar.

Bagaimana cara mengonversi daftar string ke kamus?

Metode #1. Menggunakan json. beban() + ganti()
Metode #2. Menggunakan eval()

Bagaimana cara mengonversi daftar daftar ke kamus dengan Python?

Ini bekerja dengan mengulang melalui list , dan sub-daftar l2. Kemudian, saya mengambil elemen pertama l2 dan menetapkannya sebagai kunci untuk dict , lalu mengambil elemen l2 lainnya dan meletakkannya sebagai nilai

Bagaimana cara mengubah banyak string menjadi kamus Python?

Metode 1. Memisahkan string untuk menghasilkan kunci. pasangan nilai kamus Dalam pendekatan ini, string yang diberikan akan dianalisis dan dengan menggunakan metode split(), string akan dipisah sedemikian rupa sehingga menghasilkan kunci. pasangan nilai untuk pembuatan kamus.