Python 2 vs. Python 3: Nøgleforskel mellem 2.x og 3.x

Hvad er Python 2?

Python 2 gjort kodeudviklingsprocessen nemmere end tidligere versioner. Det implementerede tekniske detaljer vedr Python Enhancement Proposal (PEP). Python 2.7 (sidste version i 2.x ) er ikke længere under udvikling og vil i 2020 blive udgået.

Hvad er Python 3?

Python 3 er en nyere version af Python programmeringssprog som blev udgivet i december 2008. Denne version blev primært udgivet for at løse problemer, der findes i Python 2. Arten af ​​disse ændringer er sådan, at Python 3 var uforenelig med Python 2. det er bagud uforenelig.

Nogle funktioner i Python 3 er blevet backporteret til Python 2.x-versioner for at gøre migreringsprocessen let i Python 3. Som et resultat, for enhver organisation, der brugte Python 2.x version, migrering af deres projekt til 3.x krævede mange ændringer. Disse ændringer vedrører ikke kun projekter og applikationer, men også alle de biblioteker, der indgår i Python økosystem.

Nøgleforskel

  • Python 3-syntaksen er enklere og let forståelig Python 2 syntaks er forholdsvis svær at forstå.
  • Python 3 standardlagring af strenge er Unicode, hvorimod Python 2 butikker skal definere Unicode-strengværdi med "u."
  • Python 3-værdien af ​​variabler ændres aldrig, mens i Python 2-værdien af ​​den globale variabel vil blive ændret, mens den bruges inde i for-loop.
  • Python 3 undtagelser skal anføres i parentes mens Python 2 undtagelser skal indskrives i notationer.
  • Python 3 regler for rækkefølge sammenligninger er forenklet mens Python 2 regler for rækkefølge sammenligning er komplekse.
  • Python 3 tilbyder Range() funktion til at udføre iterationer, mens In Python 2, bruges xrange() til iterationer.

Hvorfor skal du lære Python 2?

Python 2 vs. Python
Google Trends Python 2 vs Python 3

Selvom, Python 2 er en gammel open source-version, her er hvor du stadig skal lære Python 2:

  • For at blive DevOps-ingeniør skal du arbejde med konfigurationsstyringsværktøjer som marionet eller ansible. Her skal du arbejde med begge disse versioner.
  • Hvis din virksomheds kode er skrevet ind Python 2, skal du lære at arbejde med det
  • Hvis dit udviklingsteam arbejder på et projekt, der afhænger af specifikke tredjepartsbiblioteker eller software, som du ikke er i stand til at portere til Python 3, så Python 2 er den eneste mulighed for dig.

Hvorfor skal du bruge Python 3?

Learn Python 3

Stack Overflow-spørgsmål Python 2 vs Python 3

Her er de vigtigste grunde til at bruge Python 3.x versioner:

  • Python 3 understøtter moderne teknikker som AI, maskinlæring og datavidenskab
  • Python 3 er understøttet af en stor Python udviklerens fællesskab. Det er nemt at få support.
  • Det er nemmere at lære Python sprog sammenlignet med tidligere versioner.
  • Tilbyder kraftfuldt værktøjssæt og biblioteker
  • Kan blandes med andre sprog

Historie Python 2

  • Python 2.0 – 16. oktober 2000
  • Python 2.1 – 17. april 2001
  • Python 2.2 – 21. december 2001
  • Python 2.3 – 29. juli 2003
  • Python 2.4 – 30. november 2004
  • Python 2.5. – 19. september 2006
  • Python 2.6 – 1. oktober 2008
  • Python 2.7-3. juli 2010

Historie Python 3

  • Python 3.0 – 3. december 2008
  • Python 3.1 – 27. juni 2009
  • Python 3.2 - 20. februar 2011
  • Python 3.3. – 29. september 2012
  • Python 3.4.-16. marts 2014
  • Python 3.5. – 13. september 2015
  • Python 3.6- oktober 2016
  • Python 3.7- juni 2018.

Nøgleforskelle mellem Python 2 og Python 3

Her er den største forskel mellem Python 2 og Python 3:

Forskel mellem Python 2.x og Python 3.x

Forskel mellem Python 2.x og Python 3.x

Sammenligningsgrundlag Python 3 Python 2
Slip Dato 2008 2000
Funktion print print ("hej") print "hej"
Inddeling af heltal Når to heltal deles, får du en flydende værdi Når to heltal deles, angiver du altid heltalsværdi.
Unicode In Python 3, standardlagring af strenge er Unicode. For at gemme Unicode-strengværdi skal du definere dem med "u".
Syntaks Syntaksen er enklere og let forståelig. Syntaksen for Python 2 var forholdsvis svær at forstå.
Regler for bestilling af sammenligninger I denne version er Regler for bestillingssammenligninger blevet forenklet. Regler for bestillingssammenligning er meget komplekse.
iteration Den nye Range() funktion introduceret til at udføre iterationer. In Python 2, bruges xrange() til iterationer.
Undtagelser Det skal stå i parentes. Det skal være omgivet af notationer.
Læk af variabler Værdien af ​​variabler ændres aldrig. Værdien af ​​den globale variabel vil ændre sig, mens den bruges inde i for-loop.
Bagudkompatibilitet Ikke svært at portere python 2 til python 3, men det er aldrig pålideligt. Python version 3 er ikke bagudkompatibel med Python 2.
Bibliotek Mange nyere udviklere opretter biblioteker, som du kun kan bruge med Python 3. Mange ældre biblioteker skabt til Python 2 er ikke fremadkompatibel.

Python 2 vs Python 3 Eksempelkode

Python 3

def main():
  print("Hello World!")
  
if __name__== "__main__":
  main()

Python 2

def main():
  print "Hello World!"
  
if __name__== "__main__":
  main()

Hvilken Python Version at bruge?

Når det kommer til Python 2 vs Python 3 forskelle i dag, Python 3-versionen er den direkte vinder. Det er fordi Python 2 vil ikke være tilgængelig efter 2020. Messe Python 3 vedtagelse er fremtidens klare retning.

Efter at have overvejet at afslå støtte til Python 2 programmeringssprog og ekstra fordele ved opgraderinger til Python 3, er det altid tilrådeligt for en ny udvikler at vælge Python version 3. Men hvis et job kræver Python 2-funktioner, det ville være en eneste overbevisende grund til at bruge denne version.

Resumé

  • Python 2 gjorde kodeudviklingsprocessen nemmere end tidligere versioner. Det implementerede tekniske detaljer vedr Python Enhancement Proposal (PEP). Python 2.7 (sidste version i 2.x ) er ikke længere under udvikling og vil i 2020 blive udgået.
  • Python 3 er en nyere version af Python programmeringssprog, som blev udgivet i december 2008. Denne version blev primært udgivet for at løse problemer, der eksisterer i Python 2. Arten af ​​disse ændringer er sådan, at Python 3 var uforenelig med Python 2. Det er bagud-inkompatibelt.
  • In Python 2, Regler for bestilling af sammenligninger er blevet forenklet.
  • In Python 3, Regler for bestilling af sammenligninger er meget komplekse.
  • Når det kommer til Python 2 mod 3 forskelle i dag, Python 3-versionen er den direkte vinder.

Opsummer dette indlæg med: