Skirtumas tarp Python 2 ir Python 3

Jei esate pradedantysis, turite pasidomėti, kurią „Python“ versiją turėtų būti lengva pradėti: „Python 2“ ar „Python 3“. Na, tai nėra daug diskusijų kelianti diskusija, nes kiekvienos versijos privalumai ir trūkumai turi nemažą dalį. . Prieš gilindamiesi į šių dviejų skirtumus, turėtumėte atkreipti dėmesį, nei „Python 3“ yra naujos kartos kalba, kuri iki 2020 m. Pakeis 2 versiją. Tačiau „Python 2.7“ vis dar yra plačiausiai naudojama kalba tarp „Python“ bendruomenės. „Python 3“ neabejotinai yra „Python“ ateitis, o kai kurie programuotojai laikosi „Python 2.7“ dėl riboto bibliotekos palaikymo ir tik 2 versijai skirtų paketų. Išsamiau išnagrinėsime skirtumą tarp jų.

Kas yra „Python 2“?

Python'as buvo sumanytas devintojo dešimtmečio pabaigoje, o jo įgyvendinimą 1989 m. Pradėjo Guido van Rossum, kuris vėliau dirbo projekte „Amoeba“ CWI Nyderlanduose, Amsterdame. „Python 2.0“ buvo išleistas 16 dtūkst 2000 m. Spalio mėn. Su nauja technine specifikacija, pavadinimu „Python Enhancement javaslat“ (PEP), kartu su kai kuriomis papildomomis funkcijomis, tokiomis kaip sąrašo supratimas, padidintas „Unicode“ palaikymas, ciklų aptikimo šiukšlių rinkimo sistema ir dar daugiau. Laikui bėgant jis tobulėjo atnaujintais leidimais, kurie dar papildė 2.7 versijos programavimo kalbos funkcijas.

Kas yra „Python 3“?

„Python 3“ yra naujos kartos programavimo kalba, išleista 2008 m. Gruodžio mėn., Kartu su keliais naujais patobulinimais ir funkcijomis, įskaitant kai kurias nebenaudojamas funkcijas. Versija visiškai skiriasi nuo ankstesnių versijų ir šiuo metu kuriama siekiant pakeisti 2.7 versiją. 3 versija buvo išleista siekiant išspręsti saugumo problemas ir ankstesnių leidimų dizaino trūkumus, taip pašalinant perteklių. Keletas pagrindinių „Python 3“ pakeitimų apima spausdinimo pareiškimo pakeitimą į integruotą funkciją, patobulintą sveikųjų skaičių dalijimąsi, geresnį „Unicode“ palaikymą ir dar daugiau.

Skirtumas tarp Python 2 ir Python 3

  1. Generolas

„Python 2.0“ buvo išleistas 2000 m. Pabaigoje kaip skaidresnis ir įvairesnis kalbos kūrimo procesas, pakeisiantis savo pirmtakus, dėl kai kurių papildomų funkcijų, tokių kaip sąrašo supratimas ir šiukšlių surinkimo sistema. Išleidus „Python 2.2“, kūrimo procesas tapo skaidresnis bendruomenei. Tačiau, keičiantis programavimo kalboms, keičiasi ir jos funkcionalumas, kuris ilgainiui sukelia problemų kūrėjams. Todėl „Python“ 3 versija buvo išleista 2008 m. Pabaigoje 2008 m., Kad būtų pašalinti ankstesnių versijų dizaino trūkumai.

  1. Spausdinti

Vienas pagrindinių „Python“ 2 ir 3 versijų skirtumų yra tai, kaip veikia „spausdinimo“ ataskaita. Tas pats scenarijus nebus paleistas abiejose versijose tuo pačiu metu. „Python 2.0“ spausdinimo sintaksė yra traktuojama kaip teiginys, o ne kaip funkcija, kuriai nereikia teksto suvynioti į papildomą skliaustelių porą. Tačiau „Python 3“ spausdinimas () yra aiškiai traktuojamas kaip funkcija, kuri taip pat suderinama su 2.7 versija atgal ir tai taip pat reiškia, kad spausdinamas tekstas turėtų būti suvyniotas skliaustuose, arba gausite sintaksės klaidą..

  1. Sveikasis skaičius skyrius

Padalinus du sveikus skaičius „Python 2.0“ visada būtų grąžinamas sveikasis skaičius ir padalijamas dešimtainis skaičius, kuris vadinamas sveikojo skaičiaus padalijimu. Paprasčiau tariant, „Python 2.0“ skaitmenis po kablelio vertina kaip sveikus skaičius, o tai lemia grindų padalijimą. Pvz., Jei „Python 2“ įvesite išraišką 5/2, ji grąžins 2, o ne 2,5. Jis tiesiog grąžina sveikąjį skaičių iki artimiausio sveikojo skaičiaus. Tačiau „Python 3“ grįš 2.5, todėl sveikųjų skaičių padalijimas tampa intuityvesnis ir lengvesnis naudoti, ypač pradedantiesiems..

  1. „Unicode“ palaikymas

Tekstas pateikiamas naudojant dviejų tipų „Python“ eilutes: „Unicode“ stygas arba baitus. „Unicode“ yra tarptautinis simbolių kodavimo standartas, o „Unicode“ eilutė yra duomenų struktūra Python kalba, naudojama tekstui saugoti, o baitai naudojami savavališkiems dvejetainiams duomenims saugoti. „Python 2“ programoje kiekviena „Unicode“ eilutė turi būti pažymėta „u“ prefiksu, nes ji pagal nutylėjimą naudoja ASCII ženklus, kurie nėra tokie lankstūs kaip „Unicode“ kodavimas. Tačiau „Python 3“ pagal nutylėjimą saugo eilutes kaip „Unicode“, kurios yra universalesnės nei ASCII stygos.

  1. xrange

„Python 2“ „xrange“ funkcija neegzistuoja „Python 3“, nes ji yra pasenusi ir pakeista „range ()“ 3 versijoje. Diapazono funkcija yra galingesnė nei „Python 2“ xrange, todėl ji tampa greitesnė, kai kartojasi tą pačią seką kelis kartus. Diapazono funkcija elgiasi taip pat, kaip 2.0 versijos xrange funkcija. Tačiau vienas iš pagrindinių „xrange“ funkcijos pranašumų yra tas, kad objektas „xrange“ visada užima tiek pat atminties, nepaisant to, kokį diapazoną jis vaizduoja.

„Python 2“ ir „Python 3“: palyginimo diagrama

„Python 2“ ir „Python 3“ santrauka

„Python“ yra universali, aukšto lygio programavimo kalba, naudojama bendrosios programos programavimui, ir jos lengva išmokti, nesvarbu, ar pasirinksite dirbti su „Python“ versija 2.0, ar 3 versija. Tai sunkus sprendimas tiek bendruomenei, tiek naujokams. pereiti nuo „Python 2“ prie „Python 3“. Nors abi versijos turi tam tikrų funkcijų panašumų, jos neturi būti laikomos visiškai keičiamomis, nes vienaip ar kitaip įvyks perėjimas. Nors „Python 2“ yra senesnė ir vis dar populiariausia programavimo kalba tarp bendruomenių, „Python 3“ yra naujos kartos kalba, kuri liko.