Dicţionar in Python cu Sintaxă și Exemplu

În ce este un dicționar Python?

A Dicţionar in Python este colecția neordonată și schimbabilă de valori de date care deține perechi cheie-valoare. Fiecare pereche cheie-valoare din dicționar mapează cheia la valoarea asociată, ceea ce o face mai optimizată. Un dicționar în python este declarat prin includerea unei liste separate prin virgulă de perechi cheie-valoare folosind acolade ({}). Python Dicționarul este clasificat în două elemente: chei și valori.

  • Cheile vor fi un singur element
  • Valorile pot fi o listă sau o listă dintr-o listă, numere etc.

Sintaxa pentru Python Dicționar

Dict = { ' Tim': 18,  xyz,.. }

Dicționarul este listat între paranteze, în interiorul acestor paranteze sunt declarate cheile și valorile. Fiecare cheie este separată de valoarea sa prin două puncte (:), în timp ce virgulele separă fiecare element.

Sintaxa pentru Python Dicționar

Proprietăți ale cheilor de dicționar

Există două puncte importante atunci când utilizați cheile de dicționar

  • Nu este permisă mai mult de o intrare per cheie (nu este permisă nicio cheie duplicată)
  • Valorile din dicționar pot fi de orice tip, în timp ce cheile trebuie să fie imuabile precum numerele, tupluri
  • Cheile din dicționar sunt sensibile la majuscule și minuscule - Același nume de cheie, dar cu cazuri diferite sunt tratate ca taste diferite Python dicționare.

Python 2 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}   
print (Dict['Tiffany'])

Python 3 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}   
print((Dict['Tiffany']))
  • În cod, avem numele de dicționar „Dict”
  • Am declarat numele și vârsta persoanei în dicționar, unde numele este „Chei” și vârsta este „valoarea”
  • Acum rulați codul
  • Preia vârsta lui Tiffany din dicționar.

Python Dicţionar Methods

Copierea dicționarului

De asemenea, puteți copia întregul dicționar într-un nou dicționar. De exemplu, aici am copiat dicționarul nostru original în noul nume de dicționar „Băieți” și „Fete”.

Python 2 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}	
studentX=Boys.copy()
studentY=Girls.copy()
print studentX
print studentY

Python 3 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}	
studentX=Boys.copy()
studentY=Girls.copy()
print(studentX)
print(studentY)
  • Avem dicționarul original (Dict) cu numele și vârsta băieților și fetelor împreună
  • Dar vrem lista de băieți separată de lista de fete, așa că am definit elementul băieți și fete într-un nume de dicționar separat „Băieți” și „Fete”.
  • Acum, din nou, am creat un nou nume de dicționar „student X” și „student Y”, unde toate cheile și valorile dicționarului pentru băieți sunt copiate în student X, iar fetele vor fi copiate în studentY
  • Deci acum nu trebuie să te uiți în întreaga listă din dicționarul principal (Dict) pentru a verifica cine este băiat și cine este fată, trebuie doar să tipăriți studentul X dacă doriți lista de băieți și StudentY dacă doriți lista de fete
  • Deci, atunci când rulați dicționarul student X și studentY, acesta va oferi toate elementele prezente în dicționar de „băieți” și „fete” separat

Actualizare dicţionar

De asemenea, puteți actualiza un dicționar adăugând o intrare nouă sau o pereche cheie-valoare la o intrare existentă sau ștergând o intrare existentă. Aici, în exemplu, vom adăuga un alt nume, „Sarah” la dicționarul nostru existent.

Python 2 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Dict.update({"Sarah":9})
print Dict

Python 3 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Dict.update({"Sarah":9})
print(Dict)
  • Dicționarul nostru existent „Dict” nu are numele „Sarah”.
  • Folosim metoda Dict.update pentru a adăuga Sarah la dicționarul nostru existent
  • Acum rulați codul, acesta adaugă Sarah la dicționarul nostru existent

Ștergeți cheile din dicționar

Python dicționarul vă oferă libertatea de a șterge orice element din lista de dicționar. Să presupunem că nu doriți numele Charlie în listă, așa că puteți elimina elementul cheie cu următorul cod.

Python 2 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
del Dict ['Charlie']
print Dict

Python 3 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
del Dict ['Charlie']
print(Dict)

Când rulați acest cod, ar trebui să tipăriți lista dicționarului fără Charlie.

  • Am folosit codul del Dict
  • Când a fost executat codul, acesta a șters Charlie din dicționarul principal

Dicţionar item() Method

Metoda items() returnează o listă de perechi de tuple (Chei, Valoare) în dicționar.

Python 2 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "Students Name: %s" % Dict.items()

Python 3 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("Students Name: %s" % list(Dict.items()))
  • Folosim metoda code items() pentru Dict.
  • Când codul a fost executat, returnează o listă de elemente (chei și valori) din dicționar

Verificați dacă o anumită cheie există deja într-un dicționar

Pentru o listă dată, puteți verifica și dacă dicționarul nostru copil există sau nu în dicționarul principal. Aici avem două subdicționare „Băieți” și „Fete”, acum dorim să verificăm dacă dicționarul nostru Băieți există în „Dict” principal sau nu. Pentru asta, folosim metoda for loop cu metoda else if.

Python 2 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
for key in Boys.keys():
    if key in Dict.keys():
        print True
    else:       
        print False


Python 3 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
for key in list(Boys.keys()):
    if key in list(Dict.keys()):
        print(True)
    else:       
        print(False)
  • forloop în cod verifică fiecare cheie din dicționarul principal pentru cheile Boys
  • Dacă există în dicționarul principal, ar trebui să se afișeze true sau altfel ar trebui să se afișeze false
  • Când executați codul, acesta va afișa „True” de trei ori, deoarece avem trei elemente în dicționarul nostru „Băieți”.
  • Deci indică faptul că „Băieții” există în dicționarul nostru principal (Dict)

Sortarea dicționarului

În dicționar, puteți sorta și elementele. De exemplu, dacă dorim să tipărim numele elementelor din dicționarul nostru în ordine alfabetică, trebuie să folosim bucla for. Acesta va sorta fiecare element al dicționarului în consecință.

Python 2 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
Students = Dict.keys()
Students.sort()
for S in Students:
      print":".join((S,str(Dict[S])))

Python 3 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
Students = list(Dict.keys())
Students.sort()
for S in Students:
      print(":".join((S,str(Dict[S]))))
  • Am declarat studenții variabili pentru dicționarul nostru „Dict”.
  • Apoi folosim codul Students.sort, care va sorta elementul din dicționarul nostru
  • Dar pentru a sorta fiecare element din dicționar, rulăm bucla for prin declararea variabilei S
  • Acum, când executăm codul, bucla for va apela fiecare element din dicționar și va tipări șirul și valoarea într-o ordine

Python Dicţionar in-built Functions

Dicţionar len() Method

Funcția len() oferă numărul de perechi din dicționar.

De exemplu,

Python 2 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "Length : %d" % len (Dict)

Python 3 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("Length : %d" % len (Dict))

Când funcția len (Dict) este executată, dă rezultatul la „4”, deoarece există patru elemente în dicționarul nostru

Tipuri de variabile

Python nu necesită declararea explicită a spațiului de memorie de rezervă; se întâmplă automat. Sunt utilizate valorile atribuite variabilei „=". Codul pentru a determina tipul variabilei este „%type (Dict).”

Python 2 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "variable Type: %s" %type (Dict)

Python 3 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("variable Type: %s" %type (Dict))
  • Utilizați codul %type pentru a cunoaște tipul variabilei
  • Când codul a fost executat, acesta spune că un tip de variabilă este un dicționar

Python Listă cmp() Metoda

Metoda de comparare cmp() este utilizată în Python pentru a compara valorile și cheile a două dicționare. Dacă metoda returnează 0 dacă ambele dicționare sunt egale, 1 dacă dic1 > dict2 și -1 dacă dict1 < dict2.

Python 2 Exemplu

Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}	
print cmp(Girls, Boys)

Python 3 Exemplu

cmp is not supported in Python 3
  • Avem două nume de dicționar, „Boys” și „Girls”.
  • Indiferent ce declarați mai întâi în codul „cmp(Girls, Boys)” va fi considerat ca dicționar 1. În cazul nostru, am declarat mai întâi „Fetele”, deci va fi considerat ca dicționar 1 și băieții ca dicționar 2
  • Când codul este executat, se tipărește -1, indică faptul că dicționarul nostru 1 este mai mic decât dicționarul 2.

Dicţionar Str(dict)

Cu metoda Str(), puteți face un dicționar într-un format de șir imprimabil.

Python 2 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "printable string:%s" % str (Dict)

Python 3 Exemplu

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("printable string:%s" % str (Dict))
  • Utilizați codul % str (Dict)
  • Va returna elementele dicționarului într-un format de șir imprimabil

Iată lista tuturor metodelor de dicționar

Metodă Descriere Sintaxă
copie() Copiați întregul dicționar în noul dicționar dict.copy()
Actualizați() Actualizați un dicționar adăugând o intrare nouă sau o pereche cheie-valoare la o intrare existentă sau ștergând o intrare existentă. Dict.update([altele])
articole () Returnează o listă de perechi de tuplu (Chei, Valoare) în dicționar. dicționar.articole()
fel() Puteți sorta elementele Dictionary.sort()
len () Oferă numărul de perechi din dicționar. len (dict)
cmp() Comparați valorile și cheile a două dicționare cmp(dict1, dict2)
Str() Faceți un dicționar într-un format de șir imprimabil Str(dict)

Fuzionarea dicționarelor

Aici veți înțelege cum să îmbinați două dicționare date într-un singur dicționar.

Am două dicționare așa cum se arată mai jos:

Dicţionar1 : my_dict1

my_dict1 = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}

Dicţionar 2 : my_dict2

my_dict2 = {"firstName" : "Nick", "lastName": "Price"}

Să îmbinăm ambele dicționare my_dict1 și my_dict2 și să creăm un singur dicționar cu namemy_dict.

Îmbină două dicționare folosind metoda update().

Metoda update() ne va ajuta să îmbinam un dicționar cu altul. În exemplu, vom actualiza my_dict1 cu my_dict2. După utilizarea metodei update(), my_dict1 va avea conținutul my_dict2 așa cum se arată mai jos:

my_dict1 = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}

my_dict2 = {"firstName" : "Nick", "lastName": "Price"}

my_dict1.update(my_dict2)

print(my_dict1)

ieșire:

{'username': 'XYZ', 'email': 'xyz@gmail.com', 'location': 'Mumbai', 'firstName': 'Nick', 'lastName': 'Price'}

Fuzionarea dicționarelor folosind metoda ** (De la Python 3.5 în sus)

** se numește Kwargs în Python, și va funcționa cu Python versiunea 3.5+. Folosind **, putem îmbina două dicționare și va returna dicționarul îmbinat. Utilizarea ** în fața variabilei va înlocui variabila cu tot conținutul ei.

Iată un exemplu de lucru de utilizare a ** pentru a îmbina două directoare.

my_dict1 = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}

my_dict2 = {"firstName" : "Nick", "lastName": "Price"}

my_dict =  {**my_dict1, **my_dict2} 

print(my_dict)

ieșire:

{'username': 'XYZ', 'email': 'xyz@gmail.com', 'location': 'Mumbai', 'firstName': 'Nick', 'lastName': 'Price'}

Dicţionar Membership Test

Puteți testa dacă o cheie este prezentă în dicționar sau nu. Acest test poate fi efectuat numai pe cheia unui dicționar și nu pe valoare. Testul de membru se face folosind in cuvânt cheie. Când verificați cheia în dicționar folosind in cuvânt cheie, expresia returnează adevărat dacă cheia este prezentă și fals dacă nu.

Iată un exemplu care arată testarea navei de membru pe un dicționar.

my_dict = {"username": "XYZ", "email": "xyz@gmail.com", "location":"Mumbai"}
print("email" in my_dict)
print("location" in my_dict)
print("test" in my_dict)

ieșire:

True
True
False

Rezumat

  • Dicționarele într-un limbaj de programare sunt un tip de structură de date folosită pentru a stoca informații conectate într-un fel.
  • Python Dicționarul este definit în două elemente Chei și Valori.
  • Dicționarele nu stochează informațiile lor într-o anumită ordine, așa că este posibil să nu vă recuperați informațiile în aceeași ordine în care le-ați introdus.
  • Cheile vor fi un singur element
  • Valorile pot fi o listă sau o listă dintr-o listă, numere etc.
  • Nu este permisă mai mult de o intrare per cheie (nu este permisă nicio cheie duplicată)
  • Valorile din dicționar pot fi de orice tip, în timp ce cheile trebuie să fie imuabile precum numerele, tuplurile sau șirurile de caractere.
  • Cheile din dicționar sunt sensibile la majuscule și minuscule - Același nume de cheie, dar cu cazuri diferite sunt tratate ca taste diferite Python dicționare.

Buletin informativ zilnic Guru99

Începe-ți ziua cu cele mai recente și importante știri despre inteligența artificială, livrate chiar acum.