Python 2 vs. Python 3: Nyckelskillnad mellan 2.x och 3.x

Vad är Python 2?

Python 2 gjort kodutvecklingsprocessen enklare än tidigare versioner. Den implementerade tekniska detaljer för Python Enhancement Proposal (PEP). Python 2.7 (senaste versionen i 2.x ) är inte längre under utveckling och kommer att avvecklas 2020.

Vad är Python 3?

Python 3 är en nyare version av Python programmeringsspråk som släpptes i december 2008. Denna version släpptes främst för att fixa problem som finns i Python 2. Naturen av dessa förändringar är sådan att Python 3 var inkompatibel med Python 2. Det är bakåt inkompatibel.

Vissa funktioner i Python 3 har backporterats till Python 2.x-versioner för att göra migreringsprocessen enkel i Python 3. Som ett resultat, för alla organisationer som använde Python 2.x-versionen, att migrera deras projekt till 3.x behövde många ändringar. Dessa förändringar gäller inte bara projekt och applikationer utan även alla bibliotek som ingår i Python ekosystem.

NYCKELSKILL

  • Python 3 syntax är enklare och lätt att förstå medan Python 2 syntax är jämförelsevis svår att förstå.
  • Python 3 standardlagring av strängar är Unicode medan Python 2 butiker måste definiera Unicode-strängvärde med "u."
  • Python 3 värdet på variabler ändras aldrig medan i Python 2-värdet för den globala variabeln kommer att ändras när den används i for-loop.
  • Python 3 undantag ska stå inom parentes medan Python 2 undantag bör bifogas i beteckningar.
  • Python 3 regler för ordningsjämförelser förenklas medan Python 2 regler för ordningsjämförelse är komplexa.
  • Python 3 erbjuder Range() funktion för att utföra iterationer medan In Python 2 används xrange() för iterationer.

Varför ska du lära dig Python 2?

Python 2 vs. Python
Google Trender Python 2 vs Python 3

Fastän, Python 2 är en gammal version med öppen källkod här är där du fortfarande behöver lära dig Python 2:

  • För att bli en DevOps-ingenjör måste du arbeta med konfigurationshanteringsverktyg som marionett eller ansible. Här måste du arbeta med båda dessa versioner.
  • Om ditt företags kod är inskriven Python 2 kommer du att behöva lära dig att arbeta med det
  • Om ditt utvecklingsteam arbetar med ett projekt som är beroende av specifika tredjepartsbibliotek eller programvara som du inte kan porta till Python 3, då Python 2 är det enda tillgängliga alternativet för dig.

Varför ska du använda Python 3?

Lär Python 3

Stack Overflow-frågor Python 2 vs Python 3

Här är de främsta anledningarna till att använda Python 3.x-versioner:

  • Python 3 stöder moderna tekniker som AI, maskininlärning och datavetenskap
  • Python 3 stöds av en stor Python utvecklarens community. Det är lätt att få support.
  • Det är lättare att lära sig Python språk jämfört med tidigare versioner.
  • Erbjuder kraftfull verktygslåda och bibliotek
  • Kan blandas med andra språk

Historien om 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

Historien om Python 3

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

Viktiga skillnader mellan Python 2 och Python 3

Här är den största skillnaden mellan Python 2 och Python 3:

Skillnad mellan Python 2.x och Python 3.x

Skillnad mellan Python 2.x och Python 3.x

Jämförelsegrund Python 3 Python 2
Utgivningsdatum 2008 2000
Funktionstryck print ("hej") skriv ut "hej"
Uppdelning av heltal När två heltal delas får du ett flytvärde När två heltal delas anger du alltid heltalsvärde.
Unicode In Python 3, standardlagring av strängar är Unicode. För att lagra Unicode-strängvärden måste du definiera dem med "u".
syntax Syntaxen är enklare och lätt att förstå. Syntaxen för Python 2 var jämförelsevis svår att förstå.
Regler för beställning av jämförelser I denna version har Regler för beställningsjämförelser förenklats. Regler för beställningsjämförelse är mycket komplexa.
iteration Den nya Range()-funktionen introducerad för att utföra iterationer. In Python 2 används xrange() för iterationer.
undantag Den ska stå inom parentes. Det bör omges av notationer.
Läckage av variabler Variablernas värde förändras aldrig. Värdet på den globala variabeln kommer att ändras när den används i for-loop.
Bakåtkompatibilitet Inte svårt att porta python 2 till python 3 men det är aldrig tillförlitligt. Python version 3 är inte bakåtkompatibel med Python 2.
Bibliotek Många nya utvecklare skapar bibliotek som du bara kan använda med Python 3. Många äldre bibliotek skapade för Python 2 är inte framåtkompatibel.

Python 2 vs Python 3 Exempelkod

Python 3

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

Python 2

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

Som Python Version att använda?

När det gäller att Python 2 vs Python 3 skillnader idag, Python 3-versionen är den direkta vinnaren. Det är för att Python 2 kommer inte att vara tillgänglig efter 2020. Mässa Python 3 antagande är den tydliga riktningen för framtiden.

Efter att ha övervägt att tacka nej till stöd för Python 2 programmeringsspråk och extra fördelar från uppgraderingar till Python 3, är det alltid tillrådligt för en ny utvecklare att välja Python version 3. Men om ett jobb kräver Python 2-funktioner, det skulle vara en enda övertygande anledning att använda den här versionen.

Sammanfattning

  • Python 2 gjorde kodutvecklingsprocessen enklare än tidigare versioner. Den implementerade tekniska detaljer för Python Enhancement Proposal (PEP). Python 2.7 (senaste versionen i 2.x ) är inte längre under utveckling och kommer att avvecklas 2020.
  • Python 3 är en nyare version av Python programmeringsspråk som släpptes i december 2008. Denna version släpptes främst för att fixa problem som finns i Python 2. Naturen av dessa förändringar är sådan att Python 3 var inkompatibel med Python 2. Det är bakåtkompatibelt.
  • In Python 2, Regler för ordningsjämförelser har förenklats.
  • In Python 3, Regler för ordningsjämförelser är mycket komplexa.
  • När det gäller att Python 2 mot 3 skillnader idag, Python 3-versionen är den direkta vinnaren.