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?

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?
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:
| 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.
