Python

Artykuł został umieszczony na liście Zalążków artykułów. Jeżeli możesz rozbuduj go!

Python to interpretowany język programowania z 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 grafiki

Python Imaging Library (PIL)

Programowanie skryptów

Gimp - Blender - VIM - Dia - XUL

Integracja z innymi językami

C

Delphi

Java

.NET

JavaScript

Flask

  • 2014-09-27 12:31
  • 0 komentarzy
  • 3439 odsłon

Enumerate

  • 2010-02-14 16:50
  • 0 komentarzy
  • 2525 odsłon

MySQLdb, czyli MySQL w Pythonie

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

IronPython

  • 2008-06-22 00:45
  • 0 komentarzy
  • 2517 odsłon

Jak pobrać losowy cytat z Basha

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

Insertion Sort

  • 2007-03-26 23:20
  • 1 komentarz
  • 5648 odsłon

Czy wyraz jest palindromem

  • 2007-03-26 14:53
  • 22 komentarzy
  • 11827 odsłon

Punkty po tej samej stronie prostej

  • 2007-03-24 23:37
  • 0 komentarzy
  • 1581 odsłon

Współliniowość trzech punktów

  • 2007-03-24 23:01
  • 1 komentarz
  • 3121 odsłon

Gimp

  • 2007-02-05 23:32
  • 2 komentarzy
  • 2957 odsłon

PIL

  • 2007-02-05 22:15
  • 2 komentarzy
  • 3262 odsłony

Heap Sort

  • 2002-10-08 16:44
  • 0 komentarzy
  • 3445 odsłon

Quick Sort

  • 2002-10-08 16:42
  • 11 komentarzy
  • 4475 odsłon

Quick Sort

  • 2002-10-08 16:42
  • 11 komentarzy
  • 4475 odsłon