Python 2 vs. Python 3: Avainero 2.x:n ja 3.x:n välillä
Mikä on Python 2?
Python 2 teki koodinkehitysprosessista helpompaa kuin aiemmat versiot. Se toteutti tekniset yksityiskohdat Python Enhancement Proposal (PEP). Python 2.7 (viimeisin versio versiossa 2.x) ei ole enää kehitteillä, ja se lopetetaan vuonna 2020.
Mikä on Python 3?
Python 3 on uudempi versio Python ohjelmointikieli joka julkaistiin joulukuussa 2008. Tämä versio julkaistiin pääasiassa ongelmien korjaamiseksi Python 2. Näiden muutosten luonne on sellainen, että Python 3 ei ollut yhteensopiva Python 2. se on taaksepäin yhteensopimaton.
Jotkin Python 3 on takaisinportoitu Python 2.x-versiot, jotka tekevät siirtoprosessista helppoa Python 3. Tämän seurauksena kaikille organisaatioille, jotka käyttivät Python 2.x-versio, projektinsa siirtäminen 3.x-versioon vaati paljon muutoksia. Nämä muutokset eivät koske vain projekteja ja sovelluksia, vaan myös kaikkia kirjastoja, jotka ovat osa kirjastoa Python ekosysteemin.
TÄRKEÄ ERO
- Python 3 syntaksi on yksinkertaisempi ja helposti ymmärrettävä Python 2 syntaksi on suhteellisen vaikea ymmärtää.
- Python 3 merkkijonojen oletustallennus on Unicode, kun taas Python Kahden myymälän on määritettävä Unicode-merkkijonoarvo "u":lla.
- Python 3 muuttujien arvo ei koskaan muutu, kun taas in Python Globaalin muuttujan 2 arvoa muutetaan, kun sitä käytetään for-silmukan sisällä.
- Python Suluissa on oltava 3 poikkeusta Python Merkintöihin tulee liittää 2 poikkeusta.
- Python 3 tilausvertailujen sääntöä on yksinkertaistettu, kun taas Python Tilausvertailun 2 sääntöä ovat monimutkaisia.
- Python 3 tarjoaa Range()-toiminnon iteraatioiden suorittamiseen, kun taas In Python 2, xrange() käytetään iteraatioihin.
Miksi pitäisi oppia Python 2?
Siitä huolimatta, Python 2 on vanha avoimen lähdekoodin versio, jossa sinun on vielä opittava Python 2:
- Jotta voit tulla DevOps-insinööriksi ja sinun on työskenneltävä konfiguraatioiden hallintatyökalujen, kuten nukke- tai ansible, kanssa. Tässä sinun on työskenneltävä molempien näiden versioiden kanssa.
- Jos yrityksesi koodi on kirjoitettu Python 2, sinun on opittava työskentelemään sen kanssa
- Jos kehitystiimisi työskentelee projektin parissa, joka riippuu tietyistä kolmannen osapuolen kirjastoista tai ohjelmistoista, joita et voi siirtää Python 3, sitten Python 2 on ainoa käytettävissäsi oleva vaihtoehto.
Miksi sinun pitäisi käyttää Python 3?
Tässä on tärkeimmät syyt käyttää Python 3.x versiot:
- Python 3 tukee moderneja tekniikoita, kuten tekoälyä, koneoppimista ja datatieteitä
- Python 3 tukee suuri Python kehittäjien yhteisö. Tuen saaminen on helppoa.
- Se on helpompi oppia Python kieli verrattuna aikaisempiin versioihin.
- Tarjoaa tehokkaat työkalut ja kirjastot
- Yhdisteltävissä muiden kielten kanssa
Historia Python 2
- Python 2.0 – 16. lokakuuta 2000
- Python 2.1 – 17. huhtikuuta 2001
- Python 2.2 – 21. joulukuuta 2001
- Python 2.3 – 29. heinäkuuta 2003
- Python 2.4 – 30
- Python 2.5 – 19. syyskuuta 2006
- Python 2.6 – 1. lokakuuta 2008
- Python 2.7.–3
Historia Python 3
- Python 3.0 – 3. joulukuuta 2008
- Python 3.1 – 27
- Python 3.2 – 20
- Python 3.3 – 29. syyskuuta 2012
- Python 3.4.–16. maaliskuuta 2014
- Python 3.5 – 13. syyskuuta 2015
- Python 3.6 - lokakuuta 2016
- Python 3.7 - kesäkuuta 2018.
Keskeiset erot Python 2 ja Python 3
Tässä on tärkein ero Python 2 ja Python 3:
Vertailuperuste | Python 3 | Python 2 |
---|---|---|
Release Date | 2008 | 2000 |
Toimintotulostus | tulosta ("hei") | tulosta "hei" |
Kokonaislukujen jako | Aina kun kaksi kokonaislukua jaetaan, saat kelluvan arvon | Kun kaksi kokonaislukua jaetaan, annat aina kokonaislukuarvon. |
Unicode | In Python 3, oletusmerkkijonojen tallennus on Unicode. | Unicode-merkkijonoarvon tallentamiseksi sinun on määritettävä ne kirjaimella "u". |
Syntaksi | Syntaksi on yksinkertaisempi ja helposti ymmärrettävä. | Syntaksi Python 2 oli suhteellisen vaikea ymmärtää. |
Vertailujen tilaamisen säännöt | Tässä versiossa vertailujen tilaussääntöjä on yksinkertaistettu. | Tilausvertailun säännöt ovat hyvin monimutkaiset. |
iteraatio | Uusi Range()-funktio otettu käyttöön iteraatioiden suorittamiseen. | In Python 2, xrange() käytetään iteraatioihin. |
Poikkeukset | Se tulee sulkea. | Se on sisällytettävä merkintöihin. |
Muuttujien vuoto | Muuttujien arvo ei koskaan muutu. | Globaalin muuttujan arvo muuttuu, kun sitä käytetään for-silmukan sisällä. |
Yhteensopivuus taaksepäin | Python 2:n siirtäminen python 3:een ei ole vaikeaa, mutta se ei ole koskaan luotettava. | Python versio 3 ei ole taaksepäin yhteensopiva Python 2. |
Kirjasto | Monet viimeaikaiset kehittäjät luovat kirjastoja, joita voit käyttää vain Python 3. | Monet vanhemmat kirjastot luotu Python 2 ei ole eteenpäin yhteensopiva. |
Python 2 vs. Python 3 Esimerkkikoodi
Python 3
def main(): print("Hello World!") if __name__== "__main__": main()
Python 2
def main(): print "Hello World!" if __name__== "__main__": main()
Joka Python Käytettävä versio?
Kun se tulee Python 2 vs. Python 3 eroa tänään, Python 3-versio on selkeä voittaja. Se johtuu siitä Python 2 ei ole saatavilla vuoden 2020 jälkeen Python 3 adoptio on selkeä tulevaisuuden suunta.
Harkittuaan tuen vähentämistä Python 2 ohjelmointikieltä ja lisäetuja päivityksistä Python 3, uuden kehittäjän on aina suositeltavaa valita Python versio 3. Kuitenkin, jos työ vaatii Python 2 ominaisuuksia, se olisi ainoa pakottava syy käyttää tätä versiota.
Yhteenveto
- Python 2 helpotti koodin kehitysprosessia kuin aikaisemmat versiot. Se toteutti tekniset yksityiskohdat Python Enhancement Proposal (PEP). Python 2.7 (viimeisin versio versiossa 2.x) ei ole enää kehitteillä, ja se lopetetaan vuonna 2020.
- Python 3 on uudempi versio Python ohjelmointikieli, joka julkaistiin joulukuussa 2008. Tämä versio julkaistiin pääasiassa ongelmien korjaamiseksi Python 2. Näiden muutosten luonne on sellainen, että Python 3 ei ollut yhteensopiva Python 2. Se on taaksepäin yhteensopimaton.
- In Python 2, Tilausvertailujen säännöt on yksinkertaistettu.
- In Python 3, Tilausvertailujen säännöt ovat hyvin monimutkaisia.
- Kun se tulee Python 2 vs 3 ero tänään, Python 3-versio on selkeä voittaja.