Python 2 at Python 3

Anonim

Kung ikaw ay isang baguhan, dapat kang magtaka kung aling bersyon ng Python ay dapat na madaling magsimula sa: Python 2 o Python 3. Well, ito ay hindi magkano ng isang debate ng bawat isa sa mga bersyon ay may makatarungang bahagi ng mga kalamangan at kahinaan. Bago kami sumisid sa mga pagkakaiba sa pagitan ng dalawa, dapat mong tandaan kaysa sa Python 3 ay ang susunod na henerasyon ng mga wika na kung saan ay tungkol sa upang palitan ang bersyon 2 sa pamamagitan ng 2020. Gayunpaman, Python 2.7 ay pa rin ang pinaka-malawak na ginagamit na wika sa komunidad ng Python. Ang Python 3 ay walang alinlangan ang kinabukasan ng Python, habang ang ilang mga programmer ay mananatili sa Python 2.7 dahil sa limitadong suporta sa library at mga pakete na limitado sa bersyon 2 lamang. Pag-aralan natin ang pagkakaiba sa pagitan ng mga ito nang detalyado.

Ano ang Python 2?

Ang Python ay conceptualized sa huli 1980s at ang pagpapatupad nito ay nagsimula noong 1989 ni Guido van Rossum na pagkatapos ay nagtrabaho sa isang proyekto na tinatawag na "Amoeba" sa CWI Netherlands, Amsterdam. Ang Python 2.0 ay inilabas sa 16ika Oktubre, 2000 na may isang bagong teknikal na detalye na tinatawag na Panay ng Pagpapahusay ng Python (PEP) kasama ang ilang mga karagdagang tampok tulad ng listahan ng pag-unawa, nadagdagan ang suporta ng Unicode, sistema ng pagtuklas ng basura ng basura, at iba pa. Ito ay nagpatuloy upang bumuo sa paglipas ng panahon na may na-update na release na karagdagang idinagdag na pag-andar sa programming language na may bersyon 2.7.

Ano ang Python 3?

Ang Python 3 ay ang susunod na henerasyon ng programming language na inilabas noong Disyembre 2008 kasama ang ilang mga bagong pagpapahusay at tampok, kabilang ang ilang mga hindi na ginagamit na tampok. Ang bersyon ay ganap na naiiba mula sa mga predecessors nito at kasalukuyang nasa pag-unlad upang palitan ang bersyon 2.7. Ang bersyon 3 ay inilabas upang matugunan ang mga problema sa seguridad at mga depekto sa disenyo sa mga nakaraang paglabas, sa gayon pag-alis ng kalabisan. Ang ilan sa mga pangunahing pagbabago sa Python 3 ay kasama ang pagbabago ng pahayag sa pag-print sa isang built-in na function, pinahusay na integer division, mas mahusay na suporta ng Unicode, at higit pa.

Pagkakaiba sa pagitan ng Python 2 at Python 3

  1. Pangkalahatan

Ang Python 2.0 ay inilabas noong huling bahagi ng 2000 bilang isang mas malinaw at maraming nalalaman na proseso sa pag-unlad ng wika upang supersede ang mga predecessors nito, salamat sa ilang mga karagdagang tampok tulad ng listahan ng mga pagkaunawa at sistema ng koleksyon ng basura. Ang proseso ng pag-unlad ay naging mas malinaw na suportang pangkomunidad na may pagpapalabas ng Python 2.2. Gayunpaman, tulad ng mga programming language evolve sa paglipas ng panahon kaya ang pag-andar nito na kalaunan ay nagiging sanhi ng mga problema para sa mga developer. Bilang resulta, ang Python version 3 ay inilabas noong 2008 sa huli 2008 upang matugunan ang mga depekto sa disenyo sa mga nakaraang bersyon.

  1. I-print

Isa sa mga pangunahing pagkakaiba sa pagitan ng Python version 2 at version 3 ay ang paraan ng pahayag ng "print". Ang parehong script ay hindi tatakbo sa parehong mga bersyon sa parehong oras. Sa Python 2.0, ang print-syntax ay itinuturing bilang isang pahayag sa halip na isang function na hindi nangangailangan ng teksto na balot sa isang dagdag na pares ng panaklong. Gayunpaman, sa Python 3, i-print () ay tahasang itinuturing bilang isang function na din pabalik-katugma sa bersyon 2.7 at nangangahulugan din na ang tekstong ipi-print ay dapat na balot sa panaklong, o makakakuha ka ng isang syntax error.

  1. Integer Division

Ang paghati-hati sa dalawang integers sa Python 2.0 ay laging nagbalik ng isang integer at pinaputol ang decimal na lugar na tinatawag na integer division. Sa madaling salita, ang Python 2.0 ay tinatrato ang mga digit pagkatapos ng decimal point bilang mga integer na nagreresulta sa division division. Halimbawa, kung i-type mo ang expression na 5/2 sa Python 2, babalik ito 2 bilang isang resulta sa halip na 2.5. Ito ay nagbabalik lamang ng integer sa pinakamalapit na buong numero. Gayunpaman, ang Python 3 ay magbabalik 2.5 bilang isang resulta na ginagawang mas intuitive at madaling gamitin ang integer division, lalo na para sa mga newbies.

  1. Suporta sa Unicode

Ang teksto ay ipinakita gamit ang dalawang uri ng mga string sa sawa: Unicode Strings o Bytes. Ang Unicode ay ang pang-internasyonal na pamantayan para sa pag-encode ng character at Unicode string ay isang istraktura ng data sa wikang Python na ginamit upang mag-imbak ng teksto samantalang ang mga byte ay ginagamit upang mag-imbak ng di-makatwirang binary na data. Sa Python 2, ang bawat solong string ng Unicode ay dapat markahan ng prefix na "u" habang gumagamit ito ng mga character na ASCII bilang default na hindi kasing nabagong pag-encode ng Unicode. Gayunpaman, ang Python 3 ay nag-iimbak ng mga string bilang Unicode bilang default na mas maraming nalalaman kaysa sa ASCII na mga string.

  1. xrange

Ang "xrange" na pagpapaandar ng Python 2 ay hindi umiiral sa Python 3 habang ito ay hindi na ginagamit at pinalitan ng "range ()" sa bersyon 3. Ang hanay ng function ay mas malakas kaysa sa xrange ng Python 2, na ginagawang mas mabilis ang paraan kung ulit sa parehong pagkakasunod-sunod ng maraming beses. Gumagana ang hanay ng function tulad ng xrange function ng bersyon 2.0. Gayunpaman, ang isa sa mga pangunahing bentahe ng function na xrange ay ang isang xrange na bagay ay laging tumatagal ng parehong halaga ng memorya hindi alintana ng laki ng saklaw na kinakatawan nito.

Python 2 kumpara sa Python 3: Paghahambing Tsart

Buod ng Python 2 vs Python 3

Ang Python ay isang maraming nalalaman, mataas na antas na programming language na ginagamit para sa general-purpose programming at madaling matutunan, kahit na pipiliin mong magtrabaho alinman sa Python version 2.0 o sa bersyon 3. Ito ay isang mahirap na desisyon para sa parehong komunidad at mga newbies upang lumipat mula sa Python 2 hanggang sa Python 3.Habang ang parehong mga bersyon ay nagbabahagi ng ilang mga pagkakatulad sa mga tuntunin ng pag-andar, hindi sila dapat ituring bilang lubos na mapagpapalit habang malapit na mangyayari ang paglipat, isang paraan o iba pa. Kahit na ang Python 2 ay ang mas matanda at pa rin ang pinaka-popular na programming language sa komunidad, ang Python 3 ay ang susunod na henerasyong wika na naroon upang manatili.