Python 2 i Python 3

Anonim

Jeśli jesteś początkującym, musisz się zastanowić, która wersja Pythona powinna być łatwa od początku: Python 2 lub Python 3. Cóż, to nie jest wielka debata, ponieważ każda z wersji ma swój sprawiedliwy udział w zaletach i wadach.. Zanim przejdziemy do różnic między tymi dwoma, powinieneś zauważyć, że Python 3 jest następną generacją języka, który ma zastąpić wersję 2 do 2020 roku. Jednak Python 2.7 nadal jest najczęściej używanym językiem wśród społeczności Pythona. Python 3 jest niewątpliwie przyszłością Pythona, podczas gdy niektórzy programiści trzymają się Pythona 2.7 z powodu ograniczonej obsługi bibliotek i pakietów, które są ograniczone tylko do wersji 2. Przyjrzyjmy się różnicy między nimi w szczegółach.

Co to jest Python 2?

Python został skonceptualizowany pod koniec lat osiemdziesiątych, a jego wdrożenie rozpoczęło się w 1989 r. Od Guido van Rossuma, który następnie pracował przy projekcie "Amoeba" w CWI Netherlands, Amsterdam. Python 2.0 został wydany 16th Październik 2000 z nową specyfikacją techniczną o nazwie Python Enhancement Proposal (PEP) wraz z dodatkowymi funkcjami, takimi jak zrozumienie list, zwiększone wsparcie dla Unicode, system wyrzucania śmieci z funkcją wykrywania cykli i inne. Nadal rozwijał się w miarę upływu czasu dzięki zaktualizowanym wersjom, które dodatkowo dodawały funkcjonalności do języka programowania w wersji 2.7.

Co to jest Python 3?

Python 3 to następna generacja języka programowania wydana w grudniu 2008 roku wraz z kilkoma nowymi rozszerzeniami i funkcjami, w tym niektórymi przestarzałymi funkcjami. Wersja jest całkowicie odmienna od poprzedników i jest obecnie w fazie rozwoju, aby zastąpić wersję 2.7. Wersja 3 została wydana, aby rozwiązać problemy związane z bezpieczeństwem i wadami projektowymi w poprzednich wersjach, eliminując tym samym nadmiarowość. Kilka ważnych zmian w Pythonie 3 to zmiana instrukcji print w wbudowaną funkcję, poprawiony podział na liczby całkowite, lepsze wsparcie dla Unicode i inne.

Różnica między Python 2 i Python 3

  1. Generał

Python 2.0 został wydany pod koniec 2000 roku jako bardziej przejrzysty i wszechstronny proces rozwoju języka, zastępując jego poprzedników, dzięki kilku dodatkowym funkcjom, takim jak listy i system odśmiecania. Proces rozwoju stał się bardziej przejrzysty i wspierany przez społeczność dzięki wydaniu Python 2.2. Jednak wraz z ewolucją języków programowania z biegiem czasu funkcjonuje, co ostatecznie powoduje problemy dla programistów. W rezultacie, wersja Python 3 została wydana w 2008 roku pod koniec 2008 roku w celu wyeliminowania wad projektowych w poprzednich wersjach.

  1. Wydrukować

Jedną z kluczowych różnic między wersją Pythona 2 a wersją 3 jest sposób działania instrukcji "print". Ten sam skrypt nie będzie działać w obu wersjach w tym samym czasie. W Pythonie 2.0 składnia print jest traktowana jako instrukcja, a nie funkcja, która nie wymaga zawijania tekstu w dodatkową parę nawiasów. Jednak w Pythonie 3 funkcja print () jest jawnie traktowana jako funkcja, która jest również kompatybilna wstecz z wersją 2.7, co oznacza również, że tekst do wydrukowania powinien być zawinięty w nawias, lub otrzymasz błąd składni.

  1. Integer Division

Dzielenie dwóch liczb całkowitych w Pythonie 2.0 zawsze zwróci liczbę całkowitą i obcina miejsce dziesiętne, które nazywa się dzieleniem całkowitym. Mówiąc prościej, Python 2.0 traktuje cyfry po kropce dziesiętnej jako liczby całkowite, co powoduje podział pięter. Na przykład, jeśli wpiszesz wyrażenie 5/2 w Pythonie 2, w wyniku otrzymasz wynik 2 zamiast 2,5. Po prostu zwraca liczbę całkowitą do najbliższej liczby całkowitej. Jednak Python 3 zwróci 2,5 w wyniku czego podział liczb całkowitych będzie bardziej intuicyjny i łatwy w użyciu, szczególnie dla początkujących.

  1. Obsługa Unicode

Tekst jest prezentowany za pomocą dwóch typów ciągów w języku Python: ciągi znaków Unicode lub bajty. Unicode jest międzynarodowym standardem kodowania znaków, a ciąg Unicode jest strukturą danych w języku Python używanym do przechowywania tekstu, podczas gdy bajty są używane do przechowywania dowolnych danych binarnych. W Pythonie 2 każdy ciąg znaków Unicode musi być oznaczony prefiksem "u", ponieważ domyślnie używa znaków ASCII, co nie jest tak elastyczne, jak kodowanie Unicode. Jednak Python 3 przechowuje domyślnie łańcuchy znaków w standardzie Unicode, które są bardziej uniwersalne niż ciągi znaków ASCII.

  1. xrange

Funkcja "xrange" w Pythonie 2 nie istnieje w Pythonie 3, ponieważ jest przestarzała i zastąpiona przez "range ()" w wersji 3. Funkcja range jest silniejsza niż xrange Pythona 2, co czyni go szybszym, gdy wielokrotne powtarzanie tej samej sekwencji. Funkcja range zachowuje się jak funkcja xrange w wersji 2.0. Jednak jedną z głównych zalet funkcji xrange jest to, że obiekt xrange zawsze zajmuje taką samą ilość pamięci, niezależnie od rozmiaru reprezentowanego zakresu.

Python 2 vs. Python 3: Tabela porównawcza

Podsumowanie Python 2 vs Python 3

Python jest wszechstronnym, wysokopoziomowym językiem programowania używanym do programowania ogólnego i jest łatwy do nauczenia, niezależnie od tego, czy wybierzesz pracę z wersją Pythona 2.0 czy wersją 3. Jest to trudna decyzja zarówno dla społeczności, jak i początkujących. przejść z Pythona 2 do Pythona 3.Chociaż obie wersje mają pewne podobieństwa pod względem funkcjonalności, nie należy ich traktować jako całkowicie zamiennych, ponieważ przejście ma nastąpić w taki czy inny sposób. Chociaż Python 2 jest starszym i nadal najbardziej popularnym językiem programowania wśród społeczności, Python 3 jest językiem następnej generacji, który ma pozostać.