Python — interpretowany język programowania o czytelnej składni
Przegląd Pythona: geneza, cechy, implementacje, typowe zastosowania i filozofia projektowa. Przydatne informacje dla początkujących i osób oceniających wybór języka.
Przegląd
Python to popularny, wysokopoziomowy język programowania zaprojektowany z myślą o czytelności i prostocie. Jest powszechnie używany zarówno przez początkujących, jak i przez profesjonalistów w wielu dziedzinach informatyki. Jego kod często jest zwięzły i łatwy do utrzymania, co sprawia, że nadaje się do szybkiego prototypowania oraz tworzenia stabilnych aplikacji produkcyjnych. Warto odnotować, że Python funkcjonuje w modelu języka typu wysokiego poziomu i jest rozpowszechniany jako oprogramowanie otwarte.
Galeria obrazów
1 ObrazKrótka historia
Język powstał na początku lat 90. XX wieku; jego głównym inicjatorem był Guido van Rossum, który wprowadził pierwsze wersje w 1991 roku (rok powstania). Nazwa „Python” pochodzi od zainteresowań autora kulturą i humorem — odniesieniem była brytyjska grupa komediowa Monty Python. W kolejnych latach społeczność i rozwój języka rosły, a projekt przyjął model pracy otwartego źródła, co umożliwiło szerokie wsparcie i wiele bibliotek.
Główne cechy i charakterystyka
Python jest językiem interpretowanym, co oznacza, że kod wykonywany jest przez program uruchamiający, a nie bezpośrednio przez procesor po wcześniejszej kompilacji. Z tego względu programowanie w Pythonie sprzyja szybkiemu cyklowi pisania i testowania kodu. Mechanizmy te wiążą się z pojęciami takimi jak kompilacja i interpreter, które pomagają zrozumieć model wykonywania programów.
Język kładzie nacisk na czytelną składnię: w Pythonie wcięcia mają znaczenie semantyczne, a komunikaty o błędach są zazwyczaj zrozumiałe dla programisty. Python stosuje dynamiczne typowanie i zarządzanie pamięcią przez automat (garbage collector). W praktyce oznacza to więcej swobody, ale też konieczność dbania o testy i profilowanie tam, gdzie liczy się wydajność.
Inspiracje i porównania
Projektanci Pythona inspirowali się i zapożyczyli pomysły z wielu wcześniejszych języków: struktury i koncepcje spotykane w C, paradygmaty obiektowe z języków takich jak C++ oraz ogólne idee z Javy, skryptowe cechy z Perla oraz koncepcje funkcjonalne bliskie Lispowi. To połączenie spowodowało, że Python jest elastyczny i nadaje się do różnych stylów programowania.
Implementacje i wydajność
Najbardziej rozpowszechnioną implementacją Pythona jest CPython — referencyjne wydanie, które interpretuje kod Pythona i dostarcza standardową bibliotekę. Ze względu na interpretowany charakter CPythona bywają wskazania, że działa wolniej w porównaniu z językami kompilowanymi, jednak w praktyce istnieją rozwiązania pozwalające poprawić szybkość lub integrować wydajne komponenty. Do najważniejszych należą:
- PyPy — alternatywna implementacja z kompilatorem just-in-time (JIT), która często przyspiesza długotrwałe aplikacje.
- Rozszerzenia w C — kod krytyczny czasowo można napisać w języku C i wywoływać z Pythona, co jest powszechną strategią optymalizacyjną.
- Cython — narzędzie pozwalające pisać rozszerzenia, które tłumaczą składnię Pythona do C, zwiększając wydajność.
Zastosowania i ekosystem
Python jest wszechstronny i znajduje zastosowanie w wielu obszarach: tworzeniu aplikacji webowych, analizie danych i uczeniu maszynowym, automatyzacji zadań, tworzeniu skryptów systemowych, prototypowaniu oraz w edukacji. Jego popularność w data science i AI wynika z bogatego ekosystemu bibliotek oraz prostoty kodu. Równie istotna jest duża społeczność, która rozwija pakiety, narzędzia instalacyjne (takie jak menedżery pakietów) oraz dokumentację.
Filozofia i społeczność
Filozofia projektowa Pythona promuje czytelność, klarowne rozwiązania i minimalizm w konstrukcjach językowych. Praktyki te dokumentowane są w postaci zaleceń i standardów, które pomagają utrzymać spójność kodu pisanych przez różne osoby. Społeczność Pythona jest aktywna, organizuje konferencje, spotkania i tworzy materiały edukacyjne — przy czym element humoru i lekkość (nawiązania do Monty Pythona) bywają widoczne w przykładach i dokumentacji.
Osoby zainteresowane nauką Pythona znajdą wiele kursów, tutoriali i oficjalnych źródeł informacji — warto sięgnąć do oficjalnej dokumentacji oraz materiałów przygotowanych przez społeczność, aby lepiej poznać idiomy języka i jego narzędzia.
Przydatne odnośniki: więcej o języku, licencjonowanie, autor, rok powstania, nazwa i inspiracja, kompilacja, interpreter, C, wydajność, C++, Java, Perl, Lisp.
Użycie Pitona
Python jest używany przez setki tysięcy programistów i jest używany w wielu miejscach. Czasami do programu używany jest tylko kod Pythona, ale w większości przypadków jest on używany do wykonywania prostych zadań, podczas gdy inny język programowania jest używany do wykonywania bardziej skomplikowanych zadań.
Jego standardowa biblioteka składa się z wielu funkcji, które są dołączone do Pythona, gdy jest on zainstalowany. W Internecie dostępnych jest wiele innych bibliotek, które sprawiają, że język Pythona może robić więcej rzeczy. Te biblioteki sprawiają, że jest to potężny język; może on robić wiele różnych rzeczy.
Niektóre rzeczy, do których często używa się Pythona, to..:
- Rozwój sieci
- Programowanie naukowe
- Aplikacje GUI na komputerach stacjonarnych
- Programowanie sieci
- Programowanie gier.
Składnia
Python ma bardzo łatwą do odczytania składnię. Część składni Pythona pochodzi od C, ponieważ jest to język, w którym został napisany Python. Ale Python używa białej przestrzeni do odgraniczania kodu: spacji lub zakładek używa się do porządkowania kodu w grupy. Różni się to od języka C. W języku C, na końcu każdej linii znajduje się średnik, a do grupowania kodu używa się nawiasów klamrowych ({}). Użycie białej przestrzeni do określenia kodu sprawia, że Python jest bardzo łatwym do czytania językiem.
Oświadczenia i przepływ kontrolny
Oświadczenia Pythona obejmują:
- Deklaracja przydziału, lub znak =. W języku Python, wyrażenie x = 2 oznacza, że nazwa x jest związana z liczbą całkowitą 2. Nazwy w Pythonie mogą być odbite do wielu różnych typów, dlatego też Python jest językiem pisanym dynamicznie.
- Instrukcja if, która uruchamia blok kodu, jeśli pewne warunki są spełnione, wraz z innymi i elifem (skurcz innego, jeśli z innych języków programowania). Instrukcja elif uruchamia blok kodu, jeżeli poprzednie warunki nie są spełnione, ale warunki dla instrukcji elif są spełnione. Inna instrukcja uruchamia blok kodu, jeżeli nie są spełnione żadne z poprzednich warunków.
- Instrukcja for, która iteruje nad obiektem iteracyjnym, takim jak lista, i wiąże każdy element tego obiektu ze zmienną, której należy użyć w tym bloku kodu, co tworzy pętlę for.
- Instrukcja while, która uruchamia blok kodu tak długo, jak długo spełnione są pewne warunki, co tworzy pętlę while.
- Deklaracja def, która definiuje funkcję lub metodę.
- Oświadczenie o przepustce, które oznacza "nic nie rób".
- Stwierdzenie klasy, które pozwala użytkownikowi na tworzenie własnych typów obiektów, takich jak liczby całkowite i ciągi znaków.
- Deklaracja importowa, która importuje pliki Pythona do wykorzystania w kodzie użytkownika.
- Zestawienie wydruku, które przekazuje różne rzeczy do konsoli.
Wyrażenia
Wyrażenia Pythona obejmują niektóre, które są podobne do innych języków programowania, a inne nie.
- Dodawanie, odejmowanie, mnożenie i dzielenie, reprezentowane przez +, -. *, i /.
- Składniki, reprezentowane przez **.
- Aby porównać dwie wartości, Python używa ==.
- Python używa słów "i", "lub", i "nie" dla swoich booleańskich wyrażeń.
Przykład
To jest mały przykład programu Pythona. Pokazuje on "Hello World!" na ekranie.
Python robi też coś, co nazywa się "dynamicznym przydzielaniem zmiennych". Oznacza to, że gdy w programie tworzony jest numer lub słowo, użytkownik nie musi mówić, jaki jest jego typ. Ułatwia to ponowne użycie nazw zmiennych, czyniąc szybkie zmiany prostszymi. Przykład tego jest pokazany poniżej. Ten kod utworzy zarówno liczbę, jak i słowo, i pokaże je oba, używając tylko jednej zmiennej.
W języku "pisanym statycznie", takim jak C, programista musiałby powiedzieć, czy x jest liczbą czy słowem, zanim C pozwoliłby programiście ustawić x, a potem C nie pozwoliłby na zmianę jego typu z liczby na słowo.
Pytania i odpowiedzi
P: Co to jest Python?
O: Python jest językiem programowania typu open source, który został stworzony, aby był łatwy do odczytania i zrozumienia, a jednocześnie potężny.
P: Kto stworzył Pythona?
O: Holenderski programista Guido van Rossum stworzył Pythona w 1991 roku.
P: Jak twórca Pythona wymyślił jego nazwę?
O: Nazwał go po programie telewizyjnym Latający Cyrk Monty Pythona.
P: Czy Python jest językiem kompilowanym czy interpretowanym?
O: Jest to język interpretowany, co oznacza, że nie musi być skompilowany, aby działał. Interpreter uruchamia kod na prawie każdym komputerze.
P: Jakie inne języki programowania były inspiracją dla Pythona?
O: C, C++, Java, Perl i Lisp posłużyły jako inspiracja przy tworzeniu Pythona.
P: Do czego dążą programiści, wprowadzając zmiany w celu ulepszenia języka?
O: Programiści starają się nie zmieniać języka, dopóki nie będą mieli wielu rzeczy do zmiany, a także starają się nie robić małych napraw (łatek), które przyspieszyłyby działanie, ale są nieistotnymi częściami referencyjnej implementacji CPython.
P: Dlaczego utrzymanie zabawnego charakteru pythona jest ważne dla jego twórców?
O: Utrzymywanie pythona na wesoło odzwierciedla się w jego nazwie, która jest hołdem dla brytyjskiej grupy komediowej Monty Pythons, a także w zabawnym podejściu do samouczków i materiałów referencyjnych, takich jak odwoływanie się do spamu i jajek zamiast foo i bar.
Autor
AlegsaOnline.com Python — interpretowany język programowania o czytelnej składni Leandro Alegsa
URL: https://pl.alegsaonline.com/art/80262
Źródła
- pythoninsider.blogspot.com : "Python 3.7.2 and 3.6.8 are now available"
- blog.python.org : "Python 2.7.15 released"
- python.org : "PEP 483 -- The Theory of Type Hints"
- python.org : "Python legal statements"