Python 3.10s top 6 nyttige funktioner

Python 3.10s top 6 nyttige funktioner

Python 3.10 kan prale af at være en af ​​de mest stabile versioner, der er tilgængelige for brugere at downloade, og vil blive frigivet senere på året. Den nyudgivne version kommer med mange mærkbare ændringer, såsom brugervenlige funktioner til både nybegyndere og erfarne programmører.





De iøjnefaldende forbedringer i den nye Python -version inkluderer introduktion af strukturelt mønstermatch, bedre fejlmeddelelser, nye fagforeningsoperatører, præcise linjenumre til fejlfinding og meget mere.





Her er hvad du behøver at vide om Python 3.10:



Strukturmønster Matching i Python 3.10

Strukturel mønstermatchning gør kodeskrivning til en film, og det er fortsat et af de fremtrædende højdepunkter i den nyeste Python -version. Python sigter mod at forbedre de eksisterende match-case-udsagn, der findes i de tidligere versioner af programmeringssproget. Det har foretaget en opdatering af de eksisterende match-case-erklæringer i Python.

Lad os tage et hurtigt kig på implementeringerne af strukturmønstermatchning:



Match-case-erklæringen har været en del af Python-sproget i et stykke tid nu. Denne erklæring bruges dybest set til at undgå det kedelige arbejde med at skrive hvis ellers udsagn flere gange.

Du kan matche med objekter med lignende egenskaber ved hjælp af denne funktion i det nye byggeri.





match media_object:case Image(type='jpg'):# Return as-isreturn media_objectcase Image(type='png') | Image(type='gif'):return render_as(media_object, 'jpg')case Video():raise ValueError('Can't extract frames from video yet')case other_type:raise Exception(f'Media type {media_object} can't be handled yet')

Det nye pythonbibliotek genkender objekter som jpg, gif og videoer. Denne kode kan køre problemfrit uden at kaste en fejl.

2. Forbedrede fejlmeddelelser

Hver koder forstår sandsynligvis vigtigheden af ​​fejl, mens du skriver kode, og hvor irriterende nogle fejltyper kan være. De tidligere versioner af Python sendte fejlmeddelelser, så snart der var problemer i syntaksen. Disse kan blandt andet skyldes den forkerte syntaks, manglende søgeord, forkerte eller stavede søgeord.





Disse fejlmeddelelser var langt fra perfekte, da det blev svært for begyndere (nogle gange, selv avancerede brugere) at identificere den virkelige årsag til fejlen i deres koder. Som programmerer er Google fortsat din allierede med at dechifrere årsagen bag forskellige fejlmeddelelser.

hvordan man sletter begivenheder i iphone kalender

For eksempel ved mange mennesker måske ikke, hvorfor Python kaster følgende fejl:

SyntaxError: unexpected EOF while parsing error message.

Manglen på klarhed i sådanne udsagn fik den nyeste Python -version til at forbedre sit eksisterende sæt fejlmeddelelser.

De ældre meddelelser er blevet erstattet med letforståelige fejlmeddelelser som:

{blev aldrig lukket uventet EOF under parsing

Nogle flere ændringer omfatter:

Attributfejl som:

from collections import namedtoplo

modul 'samlinger' har ingen attribut 'namedtoplo'. Mente du: namedtuple?

NameError -meddelelser ændres til at se ud som:

new_var = 5print(new_vr)>

NameError: navn 'new_vr' er ikke defineret. Mente du: new_var?

3. Parenthesized Context Managers

De nye Parenthesized Context Managers kan få din kode til at se mere elegant ud. Selvom det ikke er en vigtig funktion, kan det let gøre din kode mindre klodset. Denne funktion er fordelagtig, hvis du arbejder i et team, og din kode skal struktureres.

Forestil dig at skrive en erklæring som:

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

Koden ovenfor fungerer, men den første linje er alt for lang og ser klodset ud. Du kan bryde linjen ved hjælp af en skråstreg ( ) og få koden til at se struktureret ud:

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

Med introduktionen af ​​den nye Parenthesized Context Manager kan du også bryde linjen ved hjælp af parenteser:

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

Relaterede: Python -projektideer Velegnet til begyndere

4. Ny type fagforeningsoperatør

En lille, men praktisk funktion i Python 3.10 er den nye type fagforeningsoperatør. Hver Python-udgivelse leveres med et foruddefineret sæt type-tip-funktioner.

Windows 10 langsom efter opdatering 2019

Fagforeningsoperatøren inkluderer betinget logik; for eksempel, int eller flyde kan skrives som Forening [X, Y] . Den nye fagforeningsoperatør kan udtrykkes som int | float også.

Introduktionen af ​​en ny fagforeningsoperand i Python 3.10 er tidsbesparende og får koden til at se veldefineret ud.

For eksempel:

def f(x: int | float) -> float: return x * 3.142f(1) # passf(1.5) # passf('str') # linter will show annotation error

5. Præcise linjenumre til fejlfinding

Du har muligvis bemærket mange gange, før fejlsporing ikke omdirigerer dig til den korrekte linje, hvor der er opstået en fejl. Dette gør fejlfinding vanskelig for kodere, der lige er begyndt at skrive kode.

Den mangelfulde fejlsporing er især tydelig under skrivning sys.settrace og relaterede værktøjer i Python. Den nyere version forbedrer dette betydeligt, og du kan se præcise linjenumre, når der opstår en fejl.

For at bringe et mere præcist linjenummer flytter Python 3.10 sin pålidelighed fra strømmen co_Inotab attribut og bruger den nye metode co_lines () attribut. Denne attribut fungerer på en sådan måde, at f_lineo indeholder altid det nøjagtige linjenummer.

1. for (2. x) in [1]:3. pass4. return

Relateret: Debug din Python -kode

6. Udskudt evaluering af annotationer

Inden for Python udføres evalueringen af ​​typeanmærkningen på funktionsdefinitionstidspunktet. Det betyder, at typeanmærkninger evalueres linje for linje på en top-down måde.

Selvom det kan virke som den bedste løsning, er der stadig to problemer med denne tilgang:

  • Typetip refererer til typer, der endnu ikke er defineret og ikke fungerer; disse tip skal udtrykkes som strenge.
  • Modulimporten blev langsommere, da typetip udføres i realtid.

For at undgå udførelsesproblemer gemmes annoteringer i _annotationer_ og evaluering udføres sammen. Dette gør det muligt at referere fremad, når modulimport først udføres, hvilket reducerer initialiseringstiden.

Arbejde med de nyeste funktioner i Python 3.10

Pythons nyeste version udkommer den 4. oktober 2021; det lover at rette de fejl, der er til stede i de eksisterende versioner. De følgende versioner vil forbedre den nuværende 3.10 -version.

Strukturel mønstertilknytning er højdepunktet i denne nye opdatering, og det gør det lettere at skrive koder til lignende objekter. Andre funktioner som Parenthesized Context Managers og nye type Union Operators sigter mod at gøre koden enklere og mere effektiv.

Ikke desto mindre er der nogle fremragende undtagelseshåndteringsteknikker inden for de eksisterende Python -versioner. Du kan gøre god brug af Pythons funktioner.

Del Del Tweet E -mail Sådan håndteres undtagelser i Python

Dæk dine kodningsbaser med Python -undtagelser.

Læs Næste
Relaterede emner
  • Programmering
  • Programmering
  • Python
  • Kodningstip
Om forfatteren Wini Bhalla(41 artikler udgivet)

Wini er en Delhi -baseret forfatter, der har 2 års skriveerfaring. I løbet af hendes skrivestimer har hun været tilknyttet digitale marketingbureauer og tekniske firmaer. Hun har skrevet indhold relateret til programmeringssprog, cloud -teknologi, AWS, Machine Learning og meget mere. I fritiden kan hun lide at male, tilbringe tid med sin familie og rejse til bjergene, når det er muligt.

Mere fra Wini Bhalla

Abonner på vores nyhedsbrev

Tilmeld dig vores nyhedsbrev for at få tekniske tips, anmeldelser, gratis e -bøger og eksklusive tilbud!

Klik her for at abonnere