Python 3.10 se mândrește cu a fi una dintre cele mai stabile versiuni disponibile pentru descărcare a utilizatorilor și va fi lansat mai târziu în acest an. Noua versiune va veni cu multe modificări vizibile, cum ar fi funcționalități ușor de utilizat atât pentru începători, cât și pentru programatori experimentați.

Îmbunătățirile evidente ale noii versiuni Python includ introducerea unui model structural potrivire, mesaje de eroare mai bune, noi operatori sindicali, numere precise de linie pentru depanare și multe altele Mai Mult.

Iată ce trebuie să știți despre Python 3.10:

Potrivirea modelelor structurale în Python 3.10

Potrivirea modelelor structurale face ca scrierea de cod să fie foarte simplă și continuă să fie unul dintre cele mai importante momente ale celei mai recente versiuni Python. Python își propune să îmbunătățească declarațiile preexistente de caz-caz prezente în versiunile anterioare ale limbajului de programare. A făcut o actualizare a declarațiilor de potrivire-caz existente din Python.

Să aruncăm o privire rapidă asupra implementărilor de potrivire a modelelor structurale:

Declarația caz-caz face parte din limbajul Python de ceva vreme. Această afirmație este practic utilizată pentru a evita munca obositoare de a scrie dacă-altfel declarație de mai multe ori.

Puteți asorta obiecte cu proprietăți similare utilizând această caracteristică în noua versiune.

meci media_object:
Imaginea cazului (tip = "jpg"):
# Reveniți așa cum este
returnează media_object
Imagine caz (tip = "png") | Imagine (tip = "gif"):
returnează render_as (media_object, "jpg")
Caz video ():
raise ValueError („Nu pot extrage încă cadre din videoclip”)
caz alt tip:
Excepție de ridicare (f "Tipul media {media_object} nu poate fi gestionat încă")

Noua bibliotecă Python recunoaște obiecte precum jpg, gif și videoclipuri. Acest cod poate rula perfect fără a arunca o eroare.

2. Mesaje de eroare îmbunătățite

Fiecare programator înțelege probabil importanța erorilor în timpul scrierii codului și cât de enervante pot fi unele tipuri de erori. Versiunile anterioare ale Python au aruncat mesaje de eroare de îndată ce au apărut probleme în sintaxă. Acestea se pot datora sintaxei greșite, cuvintelor cheie lipsă, cuvintelor cheie incorecte sau greșite de ortografie, printre alte probleme.

Aceste mesaje de eroare au fost departe de a fi perfecte, deoarece a devenit dificil pentru începători (uneori, chiar și pentru utilizatori avansați) să identifice cauza reală a erorii în codurile lor. În calitate de programator, Google continuă să fie aliatul dvs. în descifrarea motivului din spatele diferitelor mesaje de eroare.

De exemplu, mulți oameni ar putea să nu știe de ce Python aruncă următoarea eroare:

 SyntaxError: EOF neașteptat în timpul analizării mesajului de eroare.

Lipsa de claritate în astfel de declarații a determinat cea mai nouă versiune Python să îmbunătățească setul existent de mesaje de eroare.

Mesajele mai vechi au fost înlocuite cu mesaje de eroare ușor de înțeles, precum:

{nu a fost niciodată închis EOF neașteptat în timpul analizei

Alte câteva modificări includ:

Erori de atribut precum:

din colecțiile importate toptop

modulul „colecții” nu are atributul „namedtoplo”. Ai vrut să spui: namedtuple?

Mesajele NameError sunt modificate pentru a arăta astfel:

new_var = 5
print (new_vr)>

NameError: numele 'new_vr' nu este definit. Ai vrut să spui: new_var?

3. Managerii de context paranteziți

Noii manageri de context Parenthesized vă pot face codul să arate mai elegant. Chiar dacă nu este o caracteristică majoră, vă poate face cu ușurință codul mai puțin greoi. Această caracteristică este benefică dacă lucrați în echipă și codul dvs. trebuie să fie structurat.

Imaginați-vă că scrieți o declarație de genul:

cu open ('file1.txt', 'r') ca fin, open ('file2.txt', 'w') ca fout:
fout.write (fin.read ())

Codul de mai sus funcționează, dar prima linie este mult prea lungă și arată stângace. Puteți rupe linia folosind o bară inversă (\) și faceți codul să pară structurat:

cu open ('file1.txt', 'r') ca fin, \ open ('file2.txt', 'w') ca fout: fout.write (fin.read ())

Odată cu introducerea noului Parenthesized Context Manager, puteți, de asemenea, să spargeți linia folosind și paranteze:

cu (open ('file1.txt', 'r') ca fin,
open ('file2.txt', 'w') ca fout):
fout.write (fin.read ())

Legate de: Idei de proiect Python potrivite pentru începători

4. Operator de uniune de tip nou

O caracteristică mică, dar la îndemână în Python 3.10 este noul tip de operator de uniune. Fiecare versiune Python vine cu un set predefinit de caracteristici tip-hint.

Operatorul sindical include logică condițională; de exemplu, int sau pluti poate fi scris ca Uniune [X, Y]. Noul operator sindical poate fi exprimat ca. int | float de asemenea.

Introducerea unui nou operand de uniune în Python 3.10 economisește timp și face ca codul să arate bine definit.

De exemplu:

def f (x: int | float) -> float:
returnează x * 3.142
f (1) # trece
f (1,5) # trecere
f ('str') # linter va afișa o eroare de adnotare

Eroare de adnotare în Python

5. Numere de linie precise pentru depanare

Este posibil să fi observat de multe ori înainte ca urmărirea erorilor să nu vă redirecționeze către linia corectă unde a apărut o eroare. Acest lucru face dificilă depanarea pentru programatorii care tocmai au început să scrie cod.

Urmărirea defectuoasă a erorilor este evidentă mai ales în timpul scrierii sys.settrace și instrumente conexe în Python. Versiunea mai nouă îmbunătățește semnificativ acest lucru și puteți vedea numere de linie precise atunci când apare o eroare.

Pentru a aduce un număr de linie mai precis, Python 3.10 își schimbă fiabilitatea față de curent co_Inotab atributul și folosește noua metodă co_lines () atribut. Acest atribut funcționează astfel încât f_lineo conține întotdeauna numărul de linie exact.

1. pentru (
2. x) în [1]:
3. trece
4. întoarcere

Legate de: Depanați codul dvs. Python

6. Evaluarea amânată a adnotărilor

În Python, evaluarea adnotării de tip se efectuează la momentul definirii funcției. Aceasta înseamnă că adnotările de tip sunt evaluate rând cu rând într-un mod de sus în jos.

Chiar dacă ar putea părea cea mai bună opțiune, există încă două probleme în această abordare:

  • Indiciile de tip se referă la tipuri care nu sunt încă definite și nu funcționează; aceste indicii trebuie să fie exprimate ca șiruri.
  • Importurile de module au încetinit, deoarece indicii de tip sunt executate în timp real.

Pentru a evita problemele de execuție, adnotările sunt stocate în _anotații_ iar evaluarea se realizează împreună. Acest lucru permite trimiterea în avans, deoarece importurile de module sunt executate mai întâi, reducând astfel timpul de inițializare.

Lucrul cu cele mai noi caracteristici din Python 3.10

Cea mai nouă versiune a lui Python va fi lansată pe 4 octombrie 2021; promite să remedieze erorile prezente în versiunile existente. Versiunile următoare vor îmbunătăți versiunea 3.10 actuală.

Cartografierea modelelor structurale este punctul culminant al acestei noi actualizări și simplifică scrierea codurilor pentru obiecte similare. Alte caracteristici, cum ar fi Parenthesized Context Managers și New Type Operators Union, urmăresc să facă codul mai simplu și eficient.

Cu toate acestea, există câteva tehnici excelente de tratare a excepțiilor în versiunile Python existente. Puteți folosi bine funcționalitățile Python.

AcțiuneTweetE-mail
Cum să gestionați excepțiile în Python

Acoperiți-vă bazele de codificare cu excepții Python.

Citiți în continuare

Subiecte asemănătoare
  • Programare
  • Programare
  • Piton
  • Sfaturi de codare
Despre autor
Wini Bhalla (21 articole publicate)

Wini este un scriitor din Delhi, având 2 ani de experiență în scriere. În timpul perioadelor sale de scriere, a fost asociată cu agenții de marketing digital și firme tehnice. A scris conținut legat de limbaje de programare, tehnologie cloud, AWS, Machine Learning și multe altele. În timpul liber, îi place să picteze, să petreacă timp cu familia și să călătorească la munte, ori de câte ori este posibil.

Mai multe de la Wini Bhalla

Aboneaza-te la newsletter-ul nostru

Alăturați-vă newsletter-ului pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!

Faceți clic aici pentru a vă abona