JiNP: Python

kontakt

e-mail:
bartek@mimuw.edu.pl
konsultacje:
Wtorki 13:00-14:00, Czwartki 14:00-15:00, pokoj 5770

Lab 1.

Początek: Zapoznanie sie z pythonem, praca z interpreterem, skladnia, podstawy obiektowosci i dynamicznego typowania. import this. Klasy opisujące figury geometryczne z metodami pole.

Lab 2.

Kolekcje obiektów: Listy, słowniki i zbiory. Iteratory. operacje na zbiorach. Kopiowanie kolekcji. Pilki jako kolekcje linii. Program zliczający wystąpienia słów w pliku wejściowym. Moduł collections.

Lab 3.

Metody specjalne: "Konstruktory", wypisywanie obiektów, przeciążanie operacji arytmetycznych, metody akcesorowe, __call__. Konstrukcja modułów i pakietów (katalogów modułów) w pythonie. Dodawanie metod specjalnych (__str__, __mul__ itp.) do klas figur geometrycznych. Tworzenie graniastosłupów przez "mnożenie" podstawy i wysokości.

Lab 4.

Python funkcyjny: iteratory, moduł itertools, lambda abstrakcja, map/reduce, generatory, wyrażenia listowe i generatorowe.

Lab 5.

Aplikacje www przy pomocy django (z grubsza wg. tutorialu):

Lab 6.

Obiektowość do kwadratu: metaklasy i dekoratory.

Lab 7.

Programowanie współbieżne: wątki, procesy, kolejki, synchronizacja, stackless python.

Lab 8.

Python i internet: moduł socket, serwer i klient http, parsowanie XML/HTMP, XMLRPC,

literatura: