Python 2 i Python 3

Anonim

Ako ste početnik, morate se pitati koja inačica Python-a treba biti jednostavna za početak: Python 2 ili Python 3. Pa, to nije puno rasprave jer svaka od inačica ima svoj pravi udio od pro i kontra, Prije nego što zaronimo u razlike između njih, trebali biste primijetiti da je Python 3 sljedeća generacija jezika koja će zamijeniti verziju 2 do 2020. Međutim, Python 2.7 je i dalje najčešće korišten jezik među pitonskom zajednicom. Python 3 je nesumnjivo budućnost Pythona, dok neki programeri drže Python 2.7 zbog ograničene knjižnične podrške i paketa koji su ograničeni samo na verziju 2. Razmotrimo razliku između njih detaljno.

Što je Python 2?

Python je koncipiran u kasnim osamdesetim godinama, a njegova implementacija je započela 1989. godine od strane Guido van Rossum koji je tada radio u projektu "Amoeba" u CWI Netherlands, Amsterdam. Python 2.0 je objavljen 16. ožujkath Listopad 2000. s novom tehničkom specifikacijom pod nazivom prijedlog za poboljšanje Python (PEP) zajedno s nekim dodatnim značajkama kao što su popisno razumijevanje, povećana podrška za Unicode, sustav za sakupljanje smeća u ciklusu i još mnogo toga. Nastavio se s vremenom razvijati s ažuriranim izdanjima koja dodatno dodaju funkcionalnosti programskom jeziku s verzijom 2.7.

Što je Python 3?

Python 3 je sljedeća generacija programskog jezika izdana u prosincu 2008. zajedno s nekoliko novih poboljšanja i značajki, uključujući i neke zastarjele značajke. Verzija je potpuno drugačija od prethodnika i trenutačno je u razvoju kako bi zamijenila verziju 2.7. Verzija 3 izdana je za rješavanje sigurnosnih problema i nedostataka u prethodnim izdanjima, čime se uklanjaju zalihost. Neke od glavnih promjena u Pythonu 3 uključuju promjenu izjave ispisa u ugrađenu funkciju, poboljšanu cjelobrojnu podjelu, bolju podršku za Unicode i još mnogo toga.

Razlika između Python 2 i Python 3

  1. General

Python 2.0 je objavljen krajem 2000. kao transparentniji i svestrani proces razvoja jezika koji nadmašuje svoje prethodnike, zahvaljujući nekim dodatnim značajkama kao što su popisno razumijevanje i sustav sakupljanja smeća. Proces razvoja postao je transparentniji u zajednici, uz potporu izdavanja Python 2.2. Međutim, kako se programski jezici razvijaju tijekom vremena, tako i funkcionalnost koja eventualno uzrokuje probleme za programere. Kao rezultat, Python verzija 3 je izdana 2008 u kasnim 2008 za rješavanje dizajn nedostaci u prethodnim verzijama.

  1. otisak

Jedna od ključnih razlika između Python verzije 2 i verzije 3 je način na koji se ispisuje "ispis". Ista skripta neće se istodobno prikazivati ​​na obje verzije. U Python 2.0, sintaksa ispisa se tretira kao izjava, a ne kao funkcija koja ne zahtijeva da tekst bude umotan u dodatni par zagrada. Međutim, u Pythonu 3 ispis () izričito se tretira kao funkcija koja je također kompatibilna s verzijom 2.7 i koja znači da tekst koji treba ispisati trebao bi biti zamotan u zagradama ili ćete dobiti sintaktičku pogrešku.

  1. Integer Division

Dijeljenje dva cjelobrojna broja u Pythonu 2.0 uvijek će vratiti cijeli broj i skratiti decimalno mjesto koje se zove cijela podjela. Jednostavnim pojmovima, Python 2.0 tretira znamenke nakon decimalnih točaka kao cjelobrojnih brojeva koji rezultiraju podjelom podova. Na primjer, ako upišete izraz 5/2 u Python 2, on će vratiti 2 kao rezultat umjesto 2.5. Jednostavno vraća cijeli broj na najbliži cijeli broj. Međutim, Python 3 će vratiti 2.5 kao rezultat, što čini cijelu podjelu intuitivnije i jednostavnije za upotrebu, posebno za novorođenče.

  1. Unicode podrška

Tekst se prikazuje pomoću dvije vrste žica u Pythonu: Unicode žice ili Bytes. Unicode je međunarodni standard za kodiranje znakova, a Unicode je struktura podataka u jeziku Python koji se koristi za pohranjivanje teksta, dok se bajtovi koriste za pohranu proizvoljnih binarnih podataka. U Pythonu 2, svaki Unicode niz mora biti označen prefiksom "u" jer koristi zadane ASCII znakove koji nije fleksibilan kao Unicode kodiranje. Međutim, Python 3 prema zadanim postavkama pohranjuje nizove kao Unicode koji su više svestrani od ASCII nizova.

  1. xrange

Funkcija "xrange" Python 2 ne postoji u Pythonu 3 budući da je obustavljena i zamijenjena "rasponom" ("range") u verziji 3. Funkcija raspona je jača od okvira Python 2, što ga čini bržim kada ponavljajući istu sekvencu više puta. Funkcija raspona ponaša se kao funkcija xrange verzije 2.0. Međutim, jedna od glavnih prednosti xrange funkcije je da objekt xrange uvijek prima istu količinu memorije bez obzira na veličinu raspona kojeg predstavlja.

Python 2 vs Python 3: usporedni prikaz

Sažetak Python 2 vs Python 3

Python je svestran, visoki programski jezik koji se koristi za programiranje opće namjene i lako je naučiti, bez obzira što odlučite raditi s Python verzijom 2.0 ili verzijom 3. To je teška odluka kako za zajednicu tako i za novorođenče premjestiti iz Python 2 u Python 3.Iako obje verzije dijele neke sličnosti u smislu funkcionalnosti, one se ne smiju tretirati kao posve zamjenjive kao što će se tranzicija dogoditi, na ovaj ili onaj način. Iako je Python 2 starija i još uvijek najpopularnija programska jezika među zajednicom, Python 3 je sljedeći jezik generacije koji je tu da ostane.