Python 3.10 se može pohvaliti kao jedna od najstabilnijih verzija dostupnih korisnicima za preuzimanje, a bit će objavljena kasnije ove godine. Nedavno objavljena verzija donijet će mnoge zamjetne promjene, poput funkcionalnosti jednostavnih za korištenje kako za početnike tako i za iskusne programere.

Očigledna poboljšanja u novoj verziji Pythona uključuju uvođenje strukturnih uzoraka podudaranje, bolje poruke o pogreškama, novi sindikalni operatori, točni brojevi redaka za ispravljanje pogrešaka i još mnogo toga više.

Evo što trebate znati o Pythonu 3.10:

Podudaranje strukturnih uzoraka u Pythonu 3.10

Podudaranje strukturnih uzoraka čini pisanje koda laganim i nastavlja biti jedan od istaknutih naglasaka najnovije verzije Pythona. Python ima za cilj poboljšati već postojeće izraze podudaranja velikih slova prisutne u prethodnim verzijama programskog jezika. Ažurirano je postojeće izjave podudaranja slučaja unutar Pythona.

Pogledajmo nakratko implementacije podudaranja strukturnih uzoraka:

Izjava match-case već je neko vrijeme dio jezika Python. Ova se izjava u osnovi koristi kako bi se izbjegao dosadan rad na pisanju ako-drugo izjava više puta.

Pomoću ove značajke u novoj verziji možete uporediti objekte sa sličnim svojstvima.

podudaranje medija_objekta:
slika kućišta (type = "jpg"):
# Vratite se kakvi jeste
return media_object
slika kućišta (type = "png") | Slika (type = "gif"):
return render_as (medijski_objekt, "jpg")
video slučaj ():
podići ValueError ("Još se ne mogu izdvojiti okviri iz videozapisa")
slučaj drugi_tip:
raise Exception (f "Vrsta medija {media_object} još se ne može obraditi")

Nova knjižnica python prepoznaje objekte poput jpg, gif i video zapisa. Ovaj kôd može raditi besprijekorno bez greške.

2. Poboljšane poruke o pogreškama

Svaki koder vjerojatno razumije važnost pogrešaka pri pisanju koda i koliko neke vrste pogrešaka mogu razbjesniti. Prethodne verzije Pythona bacale su poruke o pogreškama čim je došlo do problema u sintaksi. To bi moglo biti posljedica pogrešne sintakse, nedostajućih ključnih riječi, pogrešnih ili pogrešno napisanih ključnih riječi.

Ove poruke o pogreškama bile su daleko od savršenih jer je početnicima (ponekad, čak i naprednim korisnicima) postalo teško identificirati pravi uzrok pogreške u svojim kodovima. Kao programer, Google je i dalje vaš saveznik u dešifriranju razloga za različite poruke o pogreškama.

Na primjer, mnogi ljudi možda ne znaju zašto Python baca sljedeću pogrešku:

 SyntaxError: neočekivani EOF prilikom raščlanjivanja poruke o pogrešci.

Nedostatak jasnoće u takvim izjavama potaknuo je najnoviju verziju Pythona da poboljša postojeći skup poruka o pogreškama.

Starije poruke zamijenjene su lako razumljivim porukama o pogreškama poput:

{nije nikada bio zatvoren neočekivani EOF tijekom raščlanjivanja

Još neke promjene uključuju:

Pogreške atributa poput:

iz zbirki uvoz namedtoplo

modul 'collections' nema atribut 'namedtoplo'. Jeste li mislili: namedtuple?

Poruke NameError mijenjaju se tako da izgledaju:

novi_var = 5
ispis (new_vr)>

NameError: naziv 'new_vr' nije definiran. Jeste li mislili: new_var?

3. Upravitelji konteksta u zagradama

Novi Parenthesized Context Managers mogu učiniti vaš kod elegantnijim. Iako to nije glavna značajka, vaš kod može lako učiniti manje nespretnim. Ova je značajka korisna ako radite u timu i vaš kôd mora biti strukturiran.

Zamislite da napišete izjavu poput:

s open ('file1.txt', 'r') kao perajom, open ('file2.txt', 'w') kao fout:
fout.write (fin.read ())

Gornji kôd radi, ali prvi redak je predug i izgleda nespretno. Možete prelomiti liniju pomoću obrnute kose crte ((\) i učinite da kôd izgleda strukturirano:

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

Uvođenjem novog upravitelja konteksta u zagradama, također možete prelomiti redak koristeći zagrade:

s (open ('file1.txt', 'r') kao peraja,
otvoriti ('file2.txt', 'w') kao fout):
fout.write (fin.read ())

Povezano: Ideje za Python projekte prikladne za početnike

4. Novi tip sindikalnog operatora

Mala, ali zgodna značajka u Pythonu 3.10 je novi tip sindikalnog operatora. Svako izdanje Pythona dolazi s unaprijed definiranim skupom značajki nagovještaja tipa.

Sindikalni operator uključuje uvjetnu logiku; na primjer, int ili plutati može se napisati kao Union [X, Y]. Novi sindikalni operater može se izraziti poput int | float također.

Uvođenje novog sindikalnog operanda u Python 3.10 štedi vrijeme i čini da kôd izgleda dobro definirano.

Na primjer:

def f (x: int | float) -> float:
povrat x * 3.142
f (1) # prolaz
f (1.5) # prolaz
f ('str') # linter prikazat će pogrešku napomene

Pogreška u napomenama u Pythonu

5. Precizni brojevi linija za otklanjanje pogrešaka

Možda ste već puno puta primijetili da vas praćenje pogrešaka ne preusmjerava na ispravan redak u kojem se dogodila pogreška. To otežava otklanjanje pogrešaka programerima koji su tek počeli pisati kôd.

Neispravno traženje pogrešaka posebno je očito tijekom pisanja sys.settrace i srodni alati u Pythonu. Novija verzija to značajno poboljšava i možete vidjeti precizne brojeve redaka kada se dogodi pogreška.

Da bi dobio precizniji broj linije, Python 3.10 pomiče svoju pouzdanost s trenutne co_Inotab atribut i koristi novu metodu co_lines () atribut. Ovaj atribut djeluje na takav način da f_lineo uvijek sadrži točan broj retka.

1. za (
2. x) u [1]:
3. proći
4. povratak

Povezano: Otklonite pogreške u svom Python kodu

6. Odgođena ocjena napomena

Unutar Pythona, procjena oznake tipa vrši se u vrijeme definiranja funkcije. To znači da se napomene o vrstama ocjenjuju redom po liniji odozgo prema dolje.

Iako se možda čini najboljom opcijom, ovaj pristup još uvijek ima dva problema:

  • Savjeti za tipove odnose se na vrste koje još nisu definirane i ne rade; ove savjete treba izraziti kao nizove.
  • Uvoz modula usporava se kako se nagovještaji tipova izvršavaju u stvarnom vremenu.

Da bi se izbjegli problemi s izvršenjem, bilješke se spremaju u _notacije_ a evaluacija se izvodi zajedno. To omogućuje prosljeđivanje referenci jer se prvo izvršavaju uvozi modula, smanjujući time vrijeme inicijalizacije.

Rad s najnovijim značajkama u Pythonu 3.10

Pythonova najnovija verzija izlazi 4. listopada 2021; obećava ispraviti programske pogreške prisutne u postojećim verzijama. Verzije koje slijede poboljšat će trenutnu verziju 3.10.

Mapiranje strukturnih uzoraka vrhunac je ovog novog ažuriranja i olakšava pisanje kodova za slične objekte. Druge značajke poput upravitelja kontekstom u zagradama i Union Type Operators novog tipa žele učiniti kôd jednostavnijim i učinkovitijim.

Ipak, postoje neke izvrsne tehnike rukovanja iznimkama unutar postojećih verzija Pythona. Možete dobro iskoristiti Pythonove funkcionalnosti.

UdioCvrkutE -pošta
Kako postupati s iznimkama u Pythonu

Pokrijte svoje baze kodiranja iznimkama Pythona.

Pročitajte Dalje

Povezane teme
  • Programiranje
  • Programiranje
  • Piton
  • Savjeti za kodiranje
O autoru
Wini Bhalla (Objavljen 21 članak)

Wini je spisateljica iz Delhija, koja ima 2 godine spisateljskog iskustva. Tijekom svog pisanja bila je povezana s agencijama za digitalni marketing i tehničkim tvrtkama. Napisala je sadržaje koji se odnose na programske jezike, tehnologiju u oblaku, AWS, Strojno učenje i još mnogo toga. U slobodno vrijeme voli slikati, provoditi vrijeme s obitelji i putovati u planine, kad god je to moguće.

Više od Wini Bhalle

Pretplatite se na naše obavijesti

Pridružite se našem biltenu za tehničke savjete, recenzije, besplatne e -knjige i ekskluzivne ponude!

Kliknite ovdje da biste se pretplatili