Python: Różnice pomiędzy wersjami

Z PUTwiki
Przejdź do nawigacjiPrzejdź do wyszukiwania
UWAGA! Zastąpienie treści hasła bardzo krótkim tekstem: „{{Język programowania infobox | nazwa = Python | logo = Python logo and wordmark.svg | data = 20 lutego 1991<ref>{{cytuj | autor = Guido Van Rossum | tytuł = The History of Python: A Brief Timeline of Python | data = 2009-01-20 | data dostępu = 2025-08-16 | url = https://python-history.blogspot.com/2009/01/brief-timeline-of-python.html}}</ref>…”
Znaczniki: Zastąpiono VisualEditor
Nie podano opisu zmian
Linia 57: Linia 57:
* ''Nie da się'' - [[Krzysztof Zwierzyński]]
* ''Nie da się'' - [[Krzysztof Zwierzyński]]
* ''Da się'' - nikt
* ''Da się'' - nikt
[[index.php?title=Kategoria:Python| ]]
[[index.php?title=Kategoria:Języki skryptowe]]
[[index.php?title=Kategoria:Języki programowania maszyny wirtualnej Javy]]

Wersja z 22:26, 11 gru 2025

Python
Logo języka Python
Logo języka
Pojawienie się

20 lutego 1991[1]

Paradygmat

brak

Typowanie

dynamiczne (chujowe)

Implementacja

CPython, IronPython, Jython, PyPy

Pochodne

f '(x), f ''(x)

Twórca

Szatan

Licencja

007 (License to kill)

Python – (pseudo)język programowania wysokiego poziomu klasyfikowany jako język ogólnego przeznaczenia; praktycznie służy głównie do szybkiego klejenia skryptów, które jakoś działają na mojej maszynie. Posiada rozbudowany pakiet bibliotek standardowych, z czego większość napisana jest w prawdziwych językach programowania. Nie zmienia to jednak faktu, że w tym języku nic się nie da zrobić.

Możliwości

Python jest znany z tego, że niemożliwe w nim jest m.in:

Problemy

Wcięcia jako struktura sterująca

Python wyróżnia się tym, że:

  • nie posiada jawnych znaczników bloków (np. {}),
  • strukturę programu wyznaczają wcięcia i spacje.

Podejście to umożliwia ono generowanie błędów trudnych do znalezienia, polegających na tym, że jeden blok jest wcięty trzema spacjami, a inny czterema.

GIL

Centralnym elementem implementacji referencyjnej (CPython) jest Global Interpreter Lock (GIL) – mechanizm, który:

  • uniemożliwia równoczesne wykonywanie bajtkodu w wielu wątkach,
  • zapewnia, że każdy problem związany z równoległością zostanie automatycznie zastąpiony problemem z wydajnością.

W praktyce oznacza to, że:

  • w Pythonie można tworzyć wiele wątków,
  • ale tylko jeden może naprawdę wykonywać kod Pythona w danym momencie.

Zastosowania

Jedynymi znanymi zastosowaniami języka Python od 25 lat jego istnienia są:

  • Szybkie skrypty i „klejenie” systemów – Python pełni rolę spoiwa pomiędzy bardziej poważnymi komponentami.
  • Data science, uczenie maszynowe i AI – do Pythona podpinane są wysoko wydajne biblioteki wykonane np. w Delphi, dzięki czemu obliczenia są szybkie, bo nie są wykonywane w Pythonie,
  • Aplikacje webowe – frameworki typu Django czy Flask pozwalają napisać serwis, który:
    • działa wystarczająco dobrze, dopóki ruch nie przekroczy pewnego, niewygodnego progu (np. dwóch użytkowników jednocześnie),
    • a potem można go przepisać na node.js (generując zyski dla teamu deweloperów).

Opinie eksperckie

  1. Guido Van Rossum, The History of Python: A Brief Timeline of Python [online], 20 stycznia 2009 [dostęp 2025-08-16].