Python

Python to interpretowany język programowania z silnym i dynamicznym systemem typów i automatycznym zarządzaniem pamięcią. Dzięki bogatej bibliotece standardowej, łatwości pisania i przejrzystej składni oprogramowanie w nim tworzone powstaje bardzo szybko. Stąd też promuje się go jako język do prototypowania aplikacji. Ogólny zalecany proces tworzenia oprogramowania w Pythonie wygląda następująco:

  • napisz program
  • przetestuj go, sprawdzając czy wydajność jest wystarczająca
  • jeżeli tak to koniec
  • jeżeli nie rozważ zastosowanie kompilatora JIT (PyPy)
  • sprofiluj kod i znajdź wąskie gardła (moduł profile w bibliotece standardowej)
  • zmodyfikuj kod aż osiągniesz żądaną wydajność lub przepisz wąskie gardła w C (lub użyj Cythona do zautomatyzowania tego)

W praktyce bardzo często okazuje się, że wydajność jaką osiągniemy już na początku jest wystarczająca, gdyż wąskie gardła już wcześniej zostały przeniesione do kodu w C. Tak jest np. z programowaniem gier przy wykorzystaniu istniejących bibliotek.

Zastosowania

Python jest używany w bardzo różnych dziedzinach. PyPI to repozytorium niektórych projektów wykorzystujących Pythona. Repozytorium można przeglądać m. in. pod kątem dziedzin zastosowań. Oto niektóre z zastosowań:

  • bazy danych
  • bezpieczeństwo
  • dokumentacja
  • druk
  • edukacja
  • gry
  • graficzne interfejsy użytkownika
  • internet
  • inżynieria oprogramowania
  • komunikacja
  • multimedia
  • oprogramowanie artystyczne
  • obliczenia naukowe
  • przetwarzanie tekstu

Kompilatory/Interpretery

CPython (bazowy, rekomendowany) - Jython - IronPython - MacPython - ActivePython

Biblioteka standardowa

Kietek - Wbudowane typy - Operacje na łańcuchach - Typy danych - Obliczenia numeryczne i matematyczne - Obsługa danych internetowych - Przetwarzanie dokumentów w językach znaczników - Formaty plików - Usługi kryptograficzne - Dostęp do plików i katalogów - Kompresja danych i archiwizacja - Dane trwałe - Usługi systemu operacyjnego - Opcjonalne usługi systemu operacyjnego - Komunikacja międzyprocesowa i sieciowa - Protokoły internetowe - Usługi multimedialne - Internacjonalizacja - Narzędzia wspomagające tworzenie oprogramowania - Debugger - Profilery - Usługi czasu wykonania - Usługi systemu unix - Usługi systemu MS Windows - Usługi systemu SunOS - Usługi systemu SGI IRIX - Inne

Przykłady

W tej części znajdują się przykłady obrazujące prostotę pisania aplikacji w Pythonie. W miarę możliwości znajdą się tutaj pojedyncze przykłady z różnych dziedzin.

Programowanie interfejsów

Interfejsy graficzne: pyGTK - pyQt - wxPython - pyKDE - pyGNOME - pyFLTK - FxPy - Tkinter
Interfejsy tekstowe: curses

Programowanie stron internetowych

Django - Flask - Pyramid - Bottle - Zope2 - Web2Py - Web.py

Programowanie gier

Biblioteka PyGame - pySDL2 - Panda3D

Programowanie aplikacja mobilnych i multiplatformowych

Kivy

Analiza tekstu

PLY

Obliczenia naukowe

NumPy - SciPy
Symulacje: SimPy

Przetwarzanie grafik

Python Imaging Library (PIL)

Programowanie skryptów

Gimp - Blender - VIM - Dia - XUL

Django

  • 2014-11-12 15:23
  • 0 komentarzy
  • 5827 odsłon

Flask

  • 2018-07-21 22:29
  • 0 komentarzy
  • 7152 odsłony

Enumerate

  • 2021-08-24 19:32
  • 0 komentarzy
  • 3918 odsłon

MySQLdb, czyli MySQL w Pythonie

  • 2008-11-01 23:05
  • 0 komentarzy
  • 9517 odsłon

IronPython

  • 2008-06-22 00:45
  • 0 komentarzy
  • 3974 odsłony

Jak pobrać losowy cytat z Basha

  • 2007-04-07 14:11
  • 2 komentarzy
  • 1571 odsłon

Insertion Sort

  • 2010-10-31 18:27
  • 1 komentarz
  • 10451 odsłon

Czy wyraz jest palindromem?

  • 2021-12-08 15:58
  • 23 komentarzy
  • 23733 odsłony

Punkty po tej samej stronie prostej

  • 2010-10-31 18:27
  • 0 komentarzy
  • 3612 odsłon

Współliniowość trzech punktów

  • 2010-10-31 18:27
  • 1 komentarz
  • 3252 odsłony

Gimp

  • 2010-10-31 18:27
  • 2 komentarzy
  • 5237 odsłon

PIL

  • 2010-10-31 18:27
  • 2 komentarzy
  • 5652 odsłony

Heap Sort

  • 2010-10-31 18:27
  • 0 komentarzy
  • 8155 odsłon

Quick Sort

  • 2010-10-31 18:27
  • 11 komentarzy
  • 10205 odsłon

Quick Sort

  • 2010-10-31 18:27
  • 11 komentarzy
  • 10205 odsłon