Wspólnota i filozofia Python
Kto decyduje, kim Python się stanie, jakie zasady go kierują i dlaczego "Python" i "CPython" to nie do końca to samo.
Python Software Foundation (PSF)
Python Software Foundation — organizacja non-profit w USA, założona w 2001 roku. Posiada prawa do Python, wspiera rozwój języka, organizuje konferencje (np. coroczną PyCon US)) i finansuje infrastrukturę społeczności — w tym samą stronę python.org i PyPI.
PSF nie sprzedaje Python ani nie wydaje oficjalnych certyfikatów w imieniu języka – jego rola raczej administracyjne i organizacyjne: by zapewnić Python przyszłość i że Rozwój był prowadzony przez otwartą społeczność, a nie przez jedną firmę.
PEP: jako Python podejmuje decyzje dotyczące zmian
Ważne zmiany w języku nie zachodzą spontanicznie. Istnieje formalny proces — PEP (Python Enhancement Proposal, „propozycja ulepszenia Python”). To dokument, w którym ktoś szczegółowo opisuje proponowaną zmianę, wyjaśnia, dlaczego jest potrzebna, i omawia ją ze społecznością, zanim zostanie zaakceptowana lub odrzucona.
Wszystkie PEP ponumerowane i opublikowane na peps.python.org. Two PEP warto znać z nazwy Teraz, żeby lepiej ich poznać w przyszłości:
- PEP 8 - Python przewodnik po stylu kodu (jak nazywać zmienne, ile wcięć i przestrzeni pozostawić). Wrócimy do tego szczegółowo później w tej książce.
- PEP 20 znany jest również jako „Python zen”
Zen Python
Python ma własne krótkie lista zasady, które wyjaśniają, jak język próbuje Być. Został napisany przez dewelopera Tima Petersa i można to zobaczyć, uruchamiając go w interpreterze Python jedną linijkę:
import this
Własnymi słowami, a nie cytatem dosłownym, idea sprowadza się do kilku rzeczy, które Python najbardziej docenia:
- Czytelność ważniejsza niż zwięzłość. Czysty kod jest lepszy niż kod, który zmieścić się w jednej linijce kosztem przejrzystości.
- Jawność jest lepsza niż ukryta. Kodeks powinien, jeśli to możliwe, bezpośrednio pokazywać, co robi, i nie polegać na ukrytej „magii”
- Prostota jest lepsza niż złożoność — ale nie kosztem możliwości. Jeśli zadanie Złożone, rozwiązanie może być trudne, ale nie bardziej niż powinno być.
Otwórz praktykę w tej sekcji i uzupełnij komórkę słowami import this. Przeczytaj cały wynik — te linie będą pojawiać się w podpowiedziach książki jeszcze nie raz.
CPython i inne implementacje
Warto rozróżniać dwie rzeczy: Python jako język (zasady składni i zachowania, które Language Reference) i konkretny program, który Ten język działa nazywa się realizacją.
Najczęściej stosowaną implementacją jest CPython, napisane w języku C. Jej używasz przez całą tę książkę, i to samo pobierają z python.org domyślnie. Istnieją też inne implementacje, stworzone dla szczególnych zadań:
- PyPy jest implementacją z kompilacją JIT- (Just-In-Time), czyli W niektórych zadaniach wykonuje kod znacznie szybciej CPython dzięki kompilacji na bieżąco w czasie rzeczywistym.
- MicroPython jest zwartą implementacją Python dla mikrokontrolerów i Urządzenia wbudowane z bardzo ograniczoną pamięcią, od robotów po inteligentne czujniki.