Python 2 ja Python 3

Anonim

Jos olet aloittelija, sinun täytyy miettiä, mikä Python-version pitäisi olla helppo aloittaa: Python 2 tai Python 3. No, se ei ole paljon keskustelua, sillä jokainen versiosta on kohtuullinen osa etuja ja haittoja. Ennen kuin sukellamme näiden kahden välisiä eroja, sinun on huomattava, että Python 3 on kielen uusi sukupolvi, joka aikoo korvata version 2 vuoteen 2020 mennessä. Python 2.7 on kuitenkin edelleen Python-yhteisön yleisimmin käytetty kieli. Python 3 on epäilemättä Pythonin tulevaisuus, kun taas jotkut ohjelmoijat pitävät Python 2.7: ssa rajoitetun kirjastosovittunsa ja pakettiensa vuoksi, jotka rajoittavat vain versiota 2. Tarkastellaan eroa niiden välillä yksityiskohtaisesti.

Mikä on Python 2?

Python käsitteellistettiin 1980-luvun lopulla ja sen toteutus alkoi vuonna 1989 Guido van Rossum, joka työskenteli sitten Amoeba-projektissa CWI Netherlandsissa, Amsterdamissa. Python 2.0 julkaistiin 16. lokakuutath Lokakuu 2000 uusi tekninen spesifiointi nimeltä Python Enhancement Proposal (PEP) ja joitain lisäominaisuuksia, kuten luettelon ymmärtäminen, lisääntynyt Unicode-tuki, sykemittausjätteiden keruujärjestelmä ja paljon muuta. Se jatkoi kehitystä ajan mittaan päivitetyillä julkaisuilla, jotka lisäsivät funktionaalisia ohjelmointikieliä versiolla 2.7.

Mikä on Python 3?

Python 3 on joulukuussa 2008 julkaistun ohjelmointikielen seuraava sukupolvi sekä useita uusia parannuksia ja ominaisuuksia, joista osa on vanhentuneita. Versio on täysin erilainen kuin edeltäjänsä ja on parhaillaan kehitteillä korvaamaan versio 2.7. Versio 3 julkaistiin aikaisempiin julkaisuihin liittyvien turvallisuusongelmien ja suunnittelun puutteiden korjaamiseksi irrottamalla irtisanomiset. Harva tärkeimmistä muutoksista Python 3: ssa ovat muun muassa tulostuslausunnon muuttaminen sisäänrakennettuun toimintoon, parannettu kokonaislukuja, parempaa Unicode-tukea ja paljon muuta.

Ero Python 2: n ja Python 3: n välillä

  1. yleinen

Python 2.0 julkaistiin vuoden 2000 lopulla läpinäkyvämmäksi ja monipuoliseksi kielenkäyttöprosessiksi korvaamaan edeltäjänsä eräiden lisäominaisuuksien, kuten listan ymmärtämisen ja jätteiden keräysjärjestelmän ansiosta. Kehitysprosessista tuli läpinäkyvämpi yhteisöllinen Python 2.2: n julkaiseminen. Koska ohjelmointikielet kehittyvät ajan myötä, niin se toimii myös, mikä aiheuttaa lopulta ongelmia kehittäjille. Tämän tuloksena Python-versio 3 julkaistiin vuoden 2008 loppupuolella vastaamaan aiempien versioiden suunnitteluvirheitä.

  1. Tulosta

Yksi tärkeimmistä eroista Python-version 2 ja version 3 välillä on tapana, jolla "print" -sanoma toimii. Sama skripti ei toimi molemmissa versioissa samanaikaisesti. Python 2.0: ssa tulostus-syntaksia käsitellään lausunnossa pikemminkin kuin funktiota, joka ei vaadi tekstin paketointia ylimääräiseen suluparin pariin. Kuitenkin Python 3: ssä print () käsitellään nimenomaisesti funktiolla, joka on myös taaksepäin yhteensopiva version 2.7 kanssa ja joka tarkoittaa myös, että tulostettava teksti on kääritty suluihin tai saat syntaksivirheen.

  1. Kokonaislukuja

Jakaen kaksi kokonaislukua Python 2.0: ssa palauttaisi aina kokonaisluku ja katkaisee desimaalipilkun, jota kutsutaan kokonaislukuyksiköksi. Yksinkertaisesti sanottuna Python 2.0 käsittelee numeroita desimaalien jälkeen kokonaislukuina, jotka johtavat lattian jakoon. Jos esimerkiksi kirjoitat lausekkeen 5/2 Python 2: ssa, se palauttaa tuloksen 2,5 sijasta 2,5. Se palauttaa kokonaislukua lähimpään kokonaislukuun. Python 3 palaa kuitenkin 2,5: ään, mikä tekee kokonaislukujen jakamisen intuitiivisemmaksi ja helppokäyttöisemmäksi, erityisesti aloittelijoille.

  1. Unicode-tuki

Teksti on esitetty kahdella Python-tyyppisellä merkkijonolla: Unicode Strings tai Bytes. Unicode on kansainvälinen standardi koodaavan merkin ja Unicode-merkkijono on Python-kielen tietorakenne, jota käytetään tallentamaan tekstiä, kun taas tavuja käytetään mielivaltaisten binääridatan tallentamiseen. Python 2: ssa jokainen Unicode-merkkijono on merkittävä "u" -nimellä, koska se käyttää oletusarvoisesti ASCII-merkkejä, mikä ei ole yhtä joustava kuin Unicode-koodaus.Kuitenkin Python 3 tallentaa merkkijonot Unicode-oletusarvoiksi, jotka ovat monipuolisempia kuin ASCII-merkkijonot.

  1. xRange

Python 2: ssä ei ole Python 3: n toimintoa, koska se on vanhentunut ja korvattu versiossa 3, Äurange (), Äu. Aluefunktio on tehokkaampi kuin Python 2: n xrange, joka tekee se nopeammin, kun iteroituu samassa sekvenssissä useita kertoja. Alue toiminto toimii kuten versio 2.0: n xrange-funktio. Yksi tärkeimmistä eduista xrange-toiminnosta on kuitenkin se, että xrange-objekti vie aina saman määrän muistia riippumatta sen edustavan alueen koosta.

Python 2 vs. Python 3: vertailukaavio

Yhteenveto Python 2 vs. Python 3

Python on monipuolinen, korkean tason ohjelmointikieli, jota käytetään yleiskäyttöön ja on helppo oppia, vaikka et halua työskennellä joko Python-version 2.0 tai version 3 kanssa. Se on vaikea päätös sekä yhteisölle että aloittelijat siirtyvät Python 2: sta Python 3. Vaikka molemmat versiot jakavat joitain yhtäläisyyksiä toiminnallisuuden kannalta, niitä ei pidä täysin keskenään vaihdettavina kuin siirtyminen on tapahtuva tavalla tai toisella. Vaikka Python 2 on vanhempi ja yhä suosituin ohjelmointikieli yhteisön keskuudessa, Python 3 on seuraavan sukupolven kieli, joka on siellä pysyttelemässä.