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

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

Jeśli jesteś początkującym, musisz się zastanawiać, która wersja Pythona powinna być łatwa do zacząć: Python 2 lub Python 3. Cóż, nie jest to zbyt wiele debaty, ponieważ każda z wersji ma swój spory udział w zaletach i wadach. Zanim zagłębimy się w różnice między nimi, powinieneś zwrócić uwagę niż Python 3 jest następną generacją języka, który ma zamiar zastąpić wersję 2 do 2020 r. Jednak Python 2.7 jest nadal najczęściej używanym językiem wśród społeczności Python. Python 3 jest niewątpliwie przyszłością Pythona, a niektórzy programiści trzymają się Pythona 2.7 Ze względu na ograniczoną obsługę biblioteki i pakiety, które są ograniczone tylko do wersji 2. Przeanalizujmy różnicę między nimi szczegółowo.

Co to jest Python 2?

Python został konceptualizowany pod koniec lat 80., a jego wdrożenie rozpoczęło się w 1989 roku przez Guido Van Rossum, który następnie pracował w projekcie „Amoeba” w CWI Holandii, Amsterdam. Python 2.0 został wydany na 16th Październik 2000 z nową specyfikacją techniczną o nazwie Python Enhancement Propozycja (PEP) wraz z niektórymi dodatkowymi funkcjami, takimi jak rozumienie listy, zwiększone obsługę Unicode, system zbierania śmieci w wykrywaniu cyklu i więcej. Nadal rozwijał się z czasem z zaktualizowanymi wydaniami, które dodatkowo dodały funkcjonalność języka programowania w wersji 2.7.

Co to jest Python 3?

Python 3 to kolejna generacja języka programowania wydanego w grudniu 2008. Wersja jest zupełnie inna od swoich poprzedników i obecnie jest w celu zastąpienia wersji 2.7. Wersja 3 została wydana w celu rozwiązania problemów bezpieczeństwa i wad projektowych w poprzednich wydaniach, usuwając w ten sposób redundancję. Niewiele głównych zmian w Python 3 obejmuje zmianę instrukcji drukowania w wbudowaną funkcję, ulepszony dział liczb całkowitych, lepsze wsparcie Unicode i wiele innych.

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

  1. Ogólny

Python 2.0 został wydany pod koniec 2000 r. Jako bardziej przejrzysty i wszechstronny proces rozwoju języka w celu zastąpienia swoich poprzedników, dzięki dodatkowym funkcjom, takim jak seryjnie listy i system zbierania śmieci. Proces rozwoju stał się bardziej przejrzysty, wspierany przez społeczność wraz z wydaniem Python 2.2. Jednak w miarę ewolucji języków programowania w czasie jego funkcjonalność, która ostatecznie powoduje problemy dla programistów. W rezultacie Python wersja 3 została wydana 2008 pod koniec 2008 roku, aby zająć się wadami projektowymi w poprzednich wersjach.

  1. Wydrukować

Jedną z kluczowych różnic między Python wersja 2 i wersja 3 jest sposób, w jaki działa instrukcja „drukuj”. Ten sam skrypt nie będzie działał jednocześnie w obu wersjach. W Python 2.0, syntax drukowania jest traktowany jako instrukcja, a nie funkcja, która nie wymaga owinięcia tekstu w dodatkową parę nawiasów. Jednak w Python 3 print () jest wyraźnie traktowany jako funkcja, która jest również kompatybilna wstecz w wersji 2.7 A co oznacza również, że tekst do wydrukowania powinien zostać zapakowany w nawias lub otrzymasz błąd składni.

  1. Podział liczb całkowitych

Dzielenie dwóch liczb całkowitych w Pythonie 2.0 zawsze zwróciłby liczbę całkowitą i ścina miejsce dziesiętne, które nazywa się podziałem liczb całkowitych. Mówiąc prosto, Python 2.0 traktuje cyfry po punktach dziesiętnych jako liczby całkowite, co powoduje podział podłogi. Na przykład, jeśli wpiszesz wyrażenie 5/2 w Python 2, powróci 2 w wyniku czego zamiast 2.5. Po prostu zwraca liczbę całkowitą do najbliższej liczby całkowitej. Jednak Python 3 zwróci 2.5 W rezultacie, co sprawia, że ​​podział liczb całkowitych jest bardziej intuicyjny i łatwy w użyciu, szczególnie dla początkujących.

  1. Wsparcie Unicode

Tekst jest prezentowany przy użyciu dwóch rodzajów ciągów w Python: Unicode Strings lub bajty. Unicode to międzynarodowy standard kodowania znaku, a Unicode String to struktura danych w języku Python używana do przechowywania tekstu, podczas gdy bajty są używane do przechowywania dowolnych danych binarnych. W Pythonie 2 każdy ciąg 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 sznurki domyślnie jako Unicode, które są bardziej wszechstronne niż ciągi ASCII.

  1. xrange

Funkcja „Xrange” Python 2 nie istnieje w Pythonie 3, ponieważ jest przestarzała i zastępowana przez „Range ()” w wersji 3. Funkcja zasięgu jest mocniejsza niż Xrange Python 2, co sprawia, że ​​jest szybciej podczas iteracji w tej samej sekwencji wiele razy. Funkcja zasięgu zachowuje się jak funkcja Xrange w wersji 2.0. Jednak jedną z głównych zalet funkcji Xrange jest to, że obiekt Xrange zawsze przyjmuje taką samą ilość pamięci, niezależnie od wielkości reprezentowanego zakresu.

Python 2 vs. Python 3: Wykres porównawczy

Podsumowanie Pythona 2 vs Python 3

Python to wszechstronny język programowania wysokiego poziomu używany do programowania ogólnego przez.0 lub wersja 3. To trudna decyzja zarówno dla społeczności, jak i nowicjuszy do przejścia od Pythona 2 do Pythona 3. Chociaż obie wersje mają pewne podobieństwa pod względem funkcjonalności, nie należy ich traktować tak całkowicie wymiennych, jak przejście, w ten czy inny sposób. Chociaż Python 2 jest starszym i wciąż najpopularniejszym językiem programowania wśród społeczności, Python 3 jest językiem nowej generacji.