8 tapaa luoda Python-luetteloiden sanakirja - Python-oppaat (2023)

TässäPython opetusohjelma, ymmärrämme kuinka luoda aPython-sanakirjaluetteloista. Listojen sanakirja tarkoittaa kuitenkin periaatteessa arvojen luomista ja määrittämistä luettelona Python-sanakirjassa.

Pythonissa voimme luoda luetteloiden sanakirjan seuraavilla 9 menetelmällä.Lisäksi havainnollistamme kunkin menetelmän esimerkin.

  1. Sanakirjan literaalien käyttö
  2. Käyttämällä dict()- ja zip()-menetelmiä
  3. Sanakirjan ymmärtäminen
  4. Käytä defaultdict()-menetelmää
  5. For loop- ja append()-menetelmän käyttäminen
  6. Käytä setdefault()-metodia
  7. Käyttämällä dict.fromkeys() -menetelmää
  8. Käytä zip_longest()-metodia

Sisällysluettelo

Python luetteloiden sanakirja

Pythonissa listasanakirja tarkoittaa arvoista koostuvan sanakirjan pitämistä listana.

Periaatteessa aPython-sanakirjaon järjestämätön ja muuttumaton tietotyyppi ja sitä voidaan käyttää avainelementtinä. Ensin lisäämme avainarvon kiharaisiin hakasulkeisiin luodaksemme luetteloiden sanakirjan.

Sanakirjan arvojen saamiseksi käytämme kuitenkin avaimen nimeä hakasulkeissa.

Keskustellaan jokaisesta menetelmästä Python-luetteloiden sanakirjan luomiseksi.

Tapa 1: Sanakirjan literaalien käyttö

Yksi tärkeimmistä tavoista luoda Python-listasanakirja on käyttää sanakirjan literaaleja.

Pythonissa voimme määritellä sanakirjaliteraaleja käyttämällä kaarisulkeja. Käytämme kiharahakasulkeissa kaksoispistettä erottamaan avainarvoparit, jotka on erotettu koomalla.

Tässä on esimerkki luetteloiden sanakirjan määrittämisestä sanakirjan literaaleja käyttämällä.

# Listan sanakirjan määrittäminen sanelukirjaimillastudent_marks = { 'James': [72, 63, 87], 'Adam': [56, 65, 69], 'Johannes': [88, 79, 84]}# Lasketaan kunkin opiskelijan keskiarvox:lle in student_marks.items(): nimi, pisteet = x keskiarvo = summa(marks)/len(marks) print('keskiarvopisteet', nimi, 'on', keskiarvo)

Yllä olevassa esimerkissä käytimme sanakirjan literaaleja määrittämään sanakirjaa luetteloista, joiden nimi on opiskelijat_merkit.

Tämän jälkeen käytämme for-silmukkaa iteroidaksemme jokaisen avaimen ja sen arvoluettelon ja laskea kunkin opiskelijan keskiarvopisteet.

Jaakobin keskiarvosana on 74,0 Aadamin keskiarvosana on 63,333333333333336 Johanneksen pistemäärä on 83,66666666666667

Lukea:Python-sanakirja useita avaimia

Tapa 2: Käytä dict() ja zip()

Thesanella ()konstruktori on toinen tapa määritellä sanakirja Pythonissa. Toisella puolella,postinumero()on toinen sisäänrakennettu Python-toiminto, joka mahdollistaa elementtien yhdistämisen useista listoista monikkoon.

Joten tässä menetelmässä käytämmezip()-funktiokoota useita luettelotietoja monikkoon. Ja sitten käytämmesanella ()konstruktori muuntaaksesi monikon sanakirjaksi.

Tässä on esimerkki:

# Defining keyskeys = ['James', 'Adam', 'John']values ​​= [ [72, 63, 87], [56, 65, 69], [88, 79, 84]]# luodaan sanakirjaa listsstudent_marks = dict(zip(avaimet, arvot))# Sanakirjan tulostaminen(opiskelijamerkit)

Yllä olevassa esimerkissä olemme ottaneet 2 luetteloa -avaimetjaarvot. Ja sitten käytimmesanella ()japostinumero()toimintoja luetteloiden sanakirjan luomiseksi Pythonissa.

Tässä on yllä olevan Python-ohjelman tulos.

{'James': [72, 63, 87], 'Aadam': [56, 65, 69], 'Johannes: [88, 79, 84]}

Lukea:Python-sanakirjan päivitys

Tapa 3: Sanakirjan ymmärtäminen

Pythonissa sanakirjan ymmärtäminen on yksinkertaisin tapa muuttaa olemassa oleva tieto uudeksi sanakirjaksi.

Joten tässä menetelmässä käytämmesanakirjan ymmärtäminenmenetelmä toistaa luettelon elementtejä. Ja sitten yhdistämme tiedot muodostamaan toinen Python-luettelosanakirja.

Alla on tähän lähestymistapaan liittyvä esimerkki.

# Avainten ja arvojen määrittäminenkeys = ['James', 'Adam', 'John']arvot = [ [72, 63, 87], [56, 65, 69], [88, 79, 84]]# Luetteloiden sanakirjan luominenopiskelijamerkit = {avaimet[i]: arvot[i] i:lle alueella(len(avaimet))}# Sanakirjan tulostaminentulosta (opiskelijamerkit)

Yllä olevassa esimerkissä olemme ottaneet 2 luetteloa -avaimetjaarvot. Ja sitten käytimme sanakirjan ymmärtämismenetelmää luetteloiden sanakirjan luomiseen Pythonissa.

{'James': [72, 63, 87], 'Aadam': [56, 65, 69], 'Johannes: [88, 79, 84]}

Lukea:Python-sanakirja useita avaimia

Tapa 4: Käyttödefaultdict()menetelmä

Thedefaultdict()on osa kokoelmamoduulia. Thedefaultdict()on alaluokkasaneleluokka Pythonissa ja sen käytön päärooli on puuttuvien avainten käsittely.

Voimme kuitenkin käyttäädefaultdict()määrittääksesi oletusasetuksen, jonka oletusarvo on luettelona. Ja tämän jälkeen voimme käyttääliitä()tapa lisätä arvoja luetteloihin. Tämä johtaa luetteloiden sanakirjan muodostamiseen.

Mutta siirrymme esimerkkiin, meidän on ymmärrettävä käytön syntaksidefaultdict()Pythonissa.

oletussanoma(oletus_tehdas)

Oletussyntaksissaoletus_tehdason kutsuttava objekti, joka palauttaa puuttuvan avaimen oletusarvon. Tämä kutsu ei vaadi argumentteja.

Katsotaanpa seuraavaksi esimerkkiä luetteloiden sanakirjan luomisesta käyttämällädefaultdict()Pythonissa.

# Tuodaan oletussääntöäkokoelmista tuonti oletusasetus# Listan tyypin määrittäminen oletukseksiusa_info = defaultdict(list)# Listojen sanakirjan määrittelyusa_info['Cities'].append('Austin')usa_info['Cities'].append('Seattle')usa_info['States'].append('California')usa_info['States'].append('Texas ')# Sanakirjan tulostaminentulosta (usa_info)

Tässä esimerkissä loimme sanakirjan luetteloista nimeltäusa_infokanssakaupungitjaosavaltioissaavaimina ja [Austin,Seattle] ja [Kalifornia,Texas] arvoina.

defaultdict(, {'Cities': ['Austin', 'Seattle'], 'States': ['Kalifornia', 'Texas']})

Tässä on toinen esimerkkidefaultdict()kanssasilmukallejaliitä()menetelmää luetteloiden sanakirjan luomiseen Pythonissa.

kokoelmista import defaultdictmy_new_list = [('Micheal', 18), ('George', 91), ('Oliva', 74)]new_dictionary = defaultdict(list)for new_k, new_val in my_new_list: new_dictionary[new_k].append( new_val)print("Listojen sanakirja",uusi_sanakirja)

Kun olet kirjoittanut yllä olevan koodin, tulostat kerran"uusi_sanakirja"sitten tulos näytetään muodossa a"{'Micheal':[18]}.Tässä oletusarvoista dict()-menetelmää käytetään monikkoluettelon iterointiin.

Dictionary of lists defaultdict(, {'Micheal': [18], 'George': [91], 'Oliva': [74]})

Lukea:Hanki kaikki arvot Python-sanakirjasta

Tapa 5: For loop ja append()

  • Tässä tekniikassa määrittelemme ensin tyhjän sanakirjan
  • Sitten määritämme avaimen sen arvotyypin kanssa luettelona
  • Seuraavaksi määritämme arvoluettelon
  • Sitten käytämmesilmukalleiteroidaksesi jokaisen luettelossa annetun arvon ja käyttääksesiliitä()menetelmä listan arvon lisäämiseksi
# Luodaan tyhjä sanakirjaopiskelijamerkit = {}# Listan lisääminen arvoksistudent_marks["James"] = lista()# Luettelon luominenpisteet = [ 50, 54, 76]# For-silmukan avulla voit toistaa jokaisen luettelon arvonval in marks:# Listan lisääminen arvoiksi opiskelijamerkkiinstudent_marks["James"].append(val) print(student_marks)

Kun suoritamme yllä olevan Python-ohjelman, saamme seuraavan Python-luetteloiden sanakirjan.

{'James': [50, 54, 76]}

Tapa 6: Käytä setdefault()

Ihan kuindefaultdict(), voimme myös käyttääaseta oletus()sisäänrakennettu toiminto puuttuvien näppäinten käsittelemiseen.

Theaseta oletus()menetelmä ottaa avaimen ja oletusarvon argumenteiksi ja palauttaa avaimen arvon sanakirjassa. Jos avainta ei ole sanakirjassa, avaimeen lisätään oletusarvo.

Tässä on esimerkki setdefault()-funktion käyttämisestä Pythonissa luettelosanakirjan luomiseen.

# Luodaan tyhjä sanakirjaopiskelijamerkit = {}# Arvoluettelon määrittäminenjames_marks = [76, 67, 81]# Kaikkien arvojen liittäminen avaimeenpisteet james_marksissa: student_marks.setdefault('James', []).append(marks)# Resuktin tulostaminentulosta (opiskelijamerkit)

Yllä olevan Python-ohjelman suorittamisen jälkeen saamme seuraavan tuloksen.

{'James': [76, 67, 81]}

Tapa 7: Käytä dict.fromkeys

Thedict.fromkeys()on Pythonissa sisäänrakennettu sanakirjamenetelmä, jonka avulla voidaan luoda uusi Python-sanakirja määritetyillä avaimilla ja oletusarvoilla.

Ja voimme käyttää samaa menetelmää sanakirjan luomiseen, jossa kaikki arvot asetetaan samalle listaobjektille.

Tässä on esimerkki tästä toteutuksesta Pythonissa.

# Avainten ja arvojen määrittäminenkeys = ['James', 'Adam', 'John']arvot = [88, 79, 84]# Luetteloiden sanakirjan luominenopiskelijan_merkit = dict.fromkeys(keys, [])avainten avaimelle: opiskelijamerkit[avain] = arvot# Sanakirjan tulostaminentulosta (opiskelijamerkit)

Esimerkissä määritimme 2 listaa-avaimetjaarvot. Tämän jälkeen käytimmedict.fromkeys()menetelmä luoda sanakirja luetteloista, joissa on tyhjiä luetteloarvoja.

Viimeisessä käytimmesilmukalleasettaaksesi samat lista-arvot jokaiselle näppäimessä annetulle avaimelleopiskelijat_merkitsanakirja.

{'James': [88, 79, 84], 'Adam': [88, 79, 84], 'Johannes: [88, 79, 84]}

Tapa 8: Käytä zip_longest-parametria

Thezip_longeston sisäänrakennettu toiminto, joka tulee allaitert-työkalutmoduuli. Tämän avulla voimme koota elementtejä useista mahdollisesti eripituisista iteraatioista ja täyttää tietyllä arvolla lyhyempiä iteroitavia.

Tässä menetelmässä käytämmezip_longest()toiminto avaimien ja arvoluettelon yhdistämiseen. Ja tuloksena muodostuu tuple. Tämän jälkeen käytämmesanella ()rakentaja muuntaa tuon monikon sanakirjaksi.

Tämä johtaa luetteloiden sanakirjan muodostamiseen Pythonissa.

# tuodaan zip_longestitertoolsista tuo zip_longest# Avainten ja arvojen määrittäminenkeys = ['James', 'Adam', 'John']arvot = [ [72, 63, 87], [56, 65, 69], [88, 79, 84]]# Luetteloiden sanakirjan luominenopiskelijan_merkit = dict(zip_longest(avaimet, arvot, täyttöarvo=[]))# Sanakirjan tulostaminentulosta (opiskelijamerkit)

Tässä esimerkissä käytämmezip_longest()-toiminto luodaksesi sanakirjan nimetyistä luetteloistaopiskelija_merkit.

Kun suoritamme yllä olevan Python-ohjelman, saamme seuraavan tuloksen.

8 tapaa luoda Python-luetteloiden sanakirja - Python-oppaat (1)

Saatat myös haluta lukea seuraavat Python-opetusohjelmat.

  • Kuinka luoda sanakirja kahdesta luettelosta pythonissa
  • Kuinka luoda luettelo sanakirjan avaimista pythonissa
  • Python saa kaikki tiedostot hakemistosta + erilaisia ​​esimerkkejä
  • Python List clear() -menetelmä [esimerkein]

Johtopäätös

Joten tässä Python-opetusohjelmassa ymmärsimme kuinka luoda aPython-luetteloiden sanakirjakäyttäen 8 erilaista menetelmää. Olemme kuitenkin myös havainnollistaneet useita esimerkkejä kustakin Python-menetelmästä.

Tässä on joukko menetelmiä, joista keskustelimme.

  • Python-sanakirja luetteloista, joissa käytetään sanakirjan literaaleja
  • Python-sanakirja luetteloista käyttäen dict()- ja zip()-menetelmiä
  • Python-sanakirja luetteloista sanakirjan ymmärtämisen avulla
  • Python-sanakirja luetteloista defaultdict()-menetelmällä
  • Python-sanakirja luetteloista for loop- ja append()-menetelmällä
  • Python-sanakirja luetteloista käyttäen setdefault()-metodia
  • Python-sanakirja luetteloista käyttäen dict.fromkeys() -menetelmää
  • Python-sanakirja luetteloista käyttäen zip_longest()-menetelmää

8 tapaa luoda Python-luetteloiden sanakirja - Python-oppaat (2)

Bijay Kumar

Olen Bijay Kumar, aMicrosoftin MVPSharePointissa. SharePointin lisäksi aloin työskennellä Pythonin, koneoppimisen ja tekoälyn parissa viimeisen viiden vuoden ajan. Tänä aikana sain asiantuntemusta erilaisista Python-kirjastoista, kuten Tkinter, Pandas, NumPy, Turtle, Django, Matplotlib, Tensorflow, Scipy, Scikit-Learn jne... useille asiakkaille Yhdysvalloissa, Kanadassa, Isossa-Britanniassa, Australiassa, Uusi-Seelanti jne.Katso profiilini.

Top Articles
Latest Posts
Article information

Author: Nathanial Hackett

Last Updated: 08/12/2023

Views: 6129

Rating: 4.1 / 5 (52 voted)

Reviews: 83% of readers found this page helpful

Author information

Name: Nathanial Hackett

Birthday: 1997-10-09

Address: Apt. 935 264 Abshire Canyon, South Nerissachester, NM 01800

Phone: +9752624861224

Job: Forward Technology Assistant

Hobby: Listening to music, Shopping, Vacation, Baton twirling, Flower arranging, Blacksmithing, Do it yourself

Introduction: My name is Nathanial Hackett, I am a lovely, curious, smiling, lively, thoughtful, courageous, lively person who loves writing and wants to share my knowledge and understanding with you.