Konvertálja a listát szótárrá Pythonban

Egy lista szótárrá konvertálása Pythonban nem olyan nehéz.

Nézzük meg a lista szótárrá alakításának különböző módjait.

Intro

Mielőtt belevágna az oktatóanyagba, lássunk egy példát a lista szótárrá alakítására. Lesz egy listánk a sorokról (minden sor két elemből áll), vagy csak egy listát az elemekről. Mindkét bevitelt felhasználjuk, és szótárakká alakítjuk.

Példák:

A következő példában sorszámlistát vettünk, és szótárrá alakítottuk. Minden sor első elemét kulcsnak, a második elemet pedig értéknek vettük a szótárhoz.

Bemenet: list_one = [(‘a’, ‘A’), (‘b’, ‘B’), (‘c’, ‘C’)]

Kimenet: {‘a’: ‘A’, ‘b’: ‘B’, ‘c’: ‘C’}

A következő példában vettünk egy elemlistát, és átalakítottuk egy szótárba, amely kulcsként és értékként alternatív elemeket tartalmaz. A kulcsnak nullát adunk, ha kulcsként nem maradt neki elem (ha a lista páratlan számú elemet tartalmaz).

  A 10 legjobb Halloween Video Maker a Spooky Holiday etoppc.com számára

Bemenet: list_one = [‘a’, ‘A’, ‘b’, ‘B’, ‘c’, ‘C’, ‘d’]

Kimenet: {‘a’: ‘A’, ‘b’: ‘B’, ‘c’: ‘C’, ‘d’: nincs}

Láttuk az oktatóanyag célját. És mindkét példát különböző módon fogjuk megvitatni. Kezdjük az első példával.

Tuples lista – Szótár

Nézzük meg, hogyan lehet a sorok listáját szótárrá alakítani. Megpróbálhatja megírni a kódot a következő lépések segítségével.

  • A fenti példák szerint inicializálja a sorok listáját áladatokkal (győződjön meg róla, hogy a listában minden sor pontosan két elemet tartalmaz).
  • Adja át a sorok listáját a dict metódusnak, és az eredményt egy új változóban tárolja.
  • Ez az, a sorok listáját egyetlen kódsorral szótárrá alakítottuk.
# list of tuples
list_of_tuples = [('a', 'A'), ('b', 'B'), ('c', 'C')]

# converting to dictionary
list_of_tuples_dict = dict(list_of_tuples)

# printing the result dict
print(list_of_tuples_dict)

A fenti programkimenetet a végrehajtással tesztelheti. Az eredményt a példákban látjuk.

  25 legjobb Samsung Galaxy S9 és S9+ háttérkép

Lista – Szótár

Láttuk, hogyan lehet a sorok listáját szótárrá alakítani, és ez egy egyszerű dolog Pythonban. Ebben a részben látni fogjuk, hogyan lehet egy egyszerű listát szótárrá alakítani.

Tekintse meg az oktatóanyag első szakaszának második példáját, hogy jobban érthető legyen.

Kövesse az alábbi lépéseket a második példa kódjának megírásához.

Annak az elemnek az alapértelmezett értékét, amelyiknek nincs értéke (páratlan számú elemet tartalmazó lista), a None-t töltöttük ki. Ehhez egy zip_longest nevű metódust kell használnunk az itertools modulból.

  • Importálja a modul itertools-ját, és inicializáljon egy listát a példákban megadott páratlan számú elemből.
  • Konvertálja a listát iterálhatóvá, hogy elkerülje a kulcs- és értékpárok ismétlődését a zip_longest metódusban.
  • Most adja át az iterablet a zip_longest metódusnak, és a fillvalue-t None-ként adja át. Ez egy zip objektumot fog visszaadni.
    • Kétszer kell átadnunk az iterálást, mivel kulcsot és értéket vesz a két iterálhatóból. Esetünkben mind a kulcsok, mind az értékek ugyanabban az iterálhatóságban vannak. Tehát kétszer kell átadnunk a fillvalue előtt.
  • Konvertálja az objektumot a Python szótárba a dict módszerrel.
  • Nyomtassa ki az eredményt.
# importing the module
import itertools

# plain list with odd number of elements
plain_list = ['a', 'A', 'b', 'B', 'c', 'C', 'd']

# converting it to iterable to avoid repetition
plain_list_iter = iter(plain_list)

# converting the plain_list to dict
plain_list_dict_object = itertools.zip_longest(plain_list_iter, plain_list_iter, fillvalue=None)

# convert the zip_longest object to dict using `dict`
plain_list_dict = dict(plain_list_dict_object)

# print it
print(plain_list_dict)

Bármit megadhat a kitöltési értéknek. Próbálj ki különböző dolgokat vele. És futtassa a kódot, hogy megnézze, hogy pontosan a példában említett kimenetet kapjuk-e vagy sem.

  Fájlok elrejtése a Google Biztonságos mappájával Androidon

Következtetés

Remélem, tetszett a lista szótárrá alakítása. Találkozzunk a következő bemutatóban.

Ezután tanulja meg, hogyan laposíthatja a listát Pythonban.

Boldog kódolást 🙂

Élvezettel olvasta a cikket? Mit szólnál a világgal való megosztáshoz?