6 najboljih korisnih značajki Pythona 3.10

6 najboljih korisnih značajki Pythona 3.10

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 strukturnog podudaranja uzoraka, bolje poruke o pogreškama, nove sindikalne operatore, točne brojeve redaka za ispravljanje pogrešaka i još mnogo toga.





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 u Pythonu.

Pogledajmo nakratko implementacije podudaranja strukturnih uzoraka:



Naredba 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.





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')

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 različitih poruka o pogreškama.

kako obrisati druge na iphoneu

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

SyntaxError: unexpected EOF while parsing error message.

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:

from collections import namedtoplo

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

Poruke NameError mijenjaju se tako da izgledaju:

new_var = 5print(new_vr)>

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

3. Parentezirani upravitelji konteksta

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:

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

Gornji kôd radi, ali prvi redak je predug i izgleda nespretno. Redak možete prelomiti obrnutom kosom crtom ( ) i učinite da kôd izgleda strukturirano:

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

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

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

Povezano: Ideje za Python projekte prikladne za početnike

4. Operater novog tipa Union

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.

kako dobiti više nagrada za google mišljenje

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: return x * 3.142f(1) # passf(1.5) # passf('str') # linter will show annotation error

5. Točni brojevi linija za ispravljanje pogrešaka

Možda ste primijetili mnogo puta prije nego vas praćenje grešaka ne preusmjeri na ispravan redak u kojem je došlo do pogreške. To otežava otklanjanje pogrešaka programerima koji su tek počeli pisati kôd.

Nedostatak praćenja grešaka posebno je očit tijekom pisanja sys.settrace i srodni alati u Pythonu. Novija verzija to značajno poboljšava i možete vidjeti precizne brojeve redaka kada dođe do pogreške.

Kako bi donio precizniji broj redaka, Python 3.10 mijenja svoju pouzdanost od trenutne co_Inotab atribut i koristi novu metodu co_lines () atribut. Ovaj atribut djeluje na način da je f_lineo uvijek sadrži točan broj retka.

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

Povezano: Otklonite pogreške u svom Python kodu

6. Odgođeno ocjenjivanje napomena

Unutar Pythona evaluacija oznaka tipa vrši se u vrijeme definiranja funkcije. To znači da se napomene o tipovima ocjenjuju line-by-line na način odozgo prema dolje.

Iako se može činiti da je to najbolja opcija, još uvijek postoje dva problema u ovom pristupu:

  • Savjeti za vrste odnose se na vrste koje još nisu definirane i ne rade; ti se savjeti moraju izraziti kao nizovi.
  • Uvoz modula usporio se jer se natuknice tipa izvršavaju u stvarnom vremenu.

Kako bi se izbjegli problemi s izvršavanjem, napomene se spremaju u _obilješke_ a evaluacija se obavlja zajedno. To omogućuje referenciranje prema naprijed jer se uvoz modula prvo izvršava, čime se skraćuje vrijeme inicijalizacije.

Rad s najnovijim značajkama u Pythonu 3.10

Najnovija verzija Pythona bit će objavljena 4. listopada 2021. godine; obećava popravljanje grešaka prisutnih u postojećim verzijama. Verzije koje slijede poboljšat će trenutnu verziju 3.10.

Mapiranje strukturnih uzoraka vrhunac je ovog novog ažuriranja i pojednostavljuje pisanje kodova za slične objekte. Druge značajke, kao što su Parenthesized Context Managers i nove vrste Union Operators, nastoje učiniti kod jednostavnijim i učinkovitijim.

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

Udio Udio Cvrkut E -pošta Kako se nositi 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 41 članak)

Wini je spisateljica sa sjedištem u Delhiju, s 2 godine iskustva u pisanju. Tijekom svog pisanja bila je povezana s agencijama za digitalni marketing i tehničkim tvrtkama. Napisala je sadržaj koji se odnosi na programske jezike, cloud tehnologiju, AWS, Machine Learning 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 Winija 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 za pretplatu