Forskjellen mellom Python 2 og Python 3

Hvis du er nybegynner, må du lure på hvilken versjon av Python som skal være lett å starte med: Python 2 eller Python 3. Vel, det er ikke mye av en debatt, da hver av versjonen har en god andel av fordeler og ulemper . Før vi dykker inn i forskjellene mellom de to, må du merke seg enn at Python 3 er neste generasjon av språket som skal erstatte versjon 2 innen 2020. Python 2.7 er imidlertid fortsatt det mest brukte språket blant Python-fellesskapet. Python 3 er utvilsomt fremtiden for Python, mens noen programmerere holder seg til Python 2.7 på grunn av sin begrensede bibliotekstøtte og pakker som er begrenset til versjon 2 bare. La oss studere forskjellen mellom dem i detalj.

Hva er Python 2?

Python ble konseptualisert i slutten av 1980-tallet, og implementeringen begynte i 1989 av Guido van Rossum som deretter jobbet i et prosjekt som heter "Amoeba" på CWI Nederland, Amsterdam. Python 2.0 ble utgitt på 16th Oktober 2000 med en ny teknisk spesifikasjon kalt Python Enhancement Proposal (PEP) sammen med noen ekstra funksjoner som liste forståelse, økt Unicode støtte, syklus-detektere søppel samling system, og mer. Det fortsatte å utvikle seg over tid med oppdaterte utgivelser som ytterligere lagde funksjonalitet til programmeringsspråket med versjon 2.7.

Hva er Python 3?

Python 3 er neste generasjon av programmeringsspråket som ble utgitt i desember 2008, sammen med flere nye forbedringer og funksjoner, inkludert noen utdaterte funksjoner. Versjonen er helt forskjellig fra sine forgjengere og er for tiden i utvikling for å erstatte versjon 2.7. Versjon 3 ble utgitt for å løse sikkerhetsproblemer og designfeil i de tidligere utgivelsene, og dermed fjerne redundans. Få av de store endringene i Python 3 inkluderer endring av utskriftsoppgave i en innebygd funksjon, forbedret integerdeling, bedre Unicode-støtte og mer.

Forskjellen mellom Python 2 og Python 3

  1. Generell

Python 2.0 ble utgitt i slutten av 2000 som en mer gjennomsiktig og allsidig språkutviklingsprosess for å overgå sine forgjengere, takket være noen ekstra funksjoner som listeforståelser og søppelsamlingssystem. Utviklingsprosessen ble mer gjennomsiktig samfunnsbasert med utgivelsen av Python 2.2. Men da programmeringsspråk utvikler seg over tid, gjør det også sin funksjonalitet som til slutt forårsaker problemer for utviklere. Som et resultat ble Python versjon 3 utgitt 2008 i slutten av 2008 for å løse designfeilene i tidligere versjoner.

  1. Skrive ut

En av de viktigste forskjellene mellom Python versjon 2 og versjon 3 er måten "utskrift" -oppgaven fungerer. Det samme skriptet kjøres ikke på begge versjoner samtidig. I Python 2.0 behandles utskriftssyntaxen som en setning i stedet for en funksjon som ikke krever at teksten pakkes inn i et ekstra par parentes. I Python 3 blir imidlertid utskrift () eksplisitt behandlet som en funksjon som også er bakoverkompatibel med versjon 2.7, og som også betyr at teksten som skal skrives ut, skal pakkes inn i parentes, eller du får en syntaksfeil.

  1. Integer Division

Å dele to heltall i Python 2.0 vil alltid returnere et heltall og avkorte desimaltallet som kalles heltall divisjon. Enkelt sagt behandler Python 2.0 siffer etter desimaltallene som heltall som resulterer i gulvdeling. Hvis du for eksempel skriver uttrykket 5/2 i Python 2, returnerer det 2 som et resultat i stedet for 2,5. Den returnerer ganske enkelt heltall til nærmeste hele nummer. Python 3 vil imidlertid returnere 2,5 som et resultat som gjør integer divisjon mer intuitiv og enkel å bruke, spesielt for nybegynnere.

  1. Unicode-støtte

Tekst presenteres ved hjelp av to typer strenger i Python: Unicode Strings eller Bytes. Unicode er den internasjonale standarden for koding av tegn og Unicode-streng er en datastruktur i Python-språket som brukes til å lagre tekst, mens byte brukes til å lagre vilkårlig binær data. I Python 2 må hver enkelt Unicode-streng merkes med et "u" prefiks, da det bruker standard ASCII-tegn som ikke er så fleksibelt som Unicode-koding. Python 3 lagrer imidlertid strenger som Unicode som standard, som er mer allsidige enn ASCII-strenger.

  1. xrange

Funksjonen "xrange" av Python 2 eksisterer ikke i Python 3 da den er utdatert og erstattet av "range ()" i versjon 3. Utvalgsfunksjonen er kraftigere enn Python 2s xrange, noe som gjør det raskere når iterating over samme rekkefølge flere ganger. Range-funksjonen fungerer som xrange-funksjonen i versjon 2.0. En av de viktigste fordelene ved xrange-funksjonen er imidlertid at et xrange-objekt alltid tar samme mengde minne uavhengig av størrelsen på rekkevidden det representerer.

Python 2 vs Python 3: Sammenligningstabell

Sammendrag av Python 2 vs Python 3

Python er et allsidig programmeringsspråk på høyt nivå som brukes til generell programmering, og er lett å lære, uansett om du velger å jobbe med Python versjon 2.0 eller versjon 3. Det er en vanskelig beslutning både for samfunnet og nybegynnere å flytte fra Python 2 til Python 3. Mens begge versjonene deler noen likheter i form av funksjonalitet, skal de ikke behandles som helt utvekslingsfulle som overgangen skal skje, en eller annen måte. Selv om Python 2 er den eldre og fortsatt det mest populære programmeringsspråket blant samfunnet, er Python 3 neste generasjonsspråk som er der for å bli.