*** Strona 84-85 ****************************************************************

>>> pstryk = 1
>>> pyk = 2
>>> A, B = pstryk, pyk          # krotki
>>> A, B
(1, 2)
>>> [C, D] = [pstryk, pyk]      # listy
>>> C, D
(1, 2)
>>> pstryk, pyk = pyk, pstryk   # krotki: wymiana wartoci
>>> pstryk, pyk                 # inaczej: T=pstryk; pstryk=pyk; pyk=T
(2,1)

>>> x = 0               # powizanie x z obiektem typu liczby cakowitej
>>> x = "A kuku!"       # teraz to jest acuch
>>> x = [1, 2, 3]       # a teraz to jest lista


*** Strona 87-88 ****************************************************************

>>> print "a", "b"
a b
>>> print "a" + "b"
ab
>>> print "%s...%s" % ("a", "b")
a...b

>>> print 'hello world'    # wywietla obiekt acuchowy
hello world
>>> 'hello world'          # wywietlanie interakcyjne
'hello world'
>>> import sys             # wywietlanie w trudniejszy sposb
>>> sys.stdout.write('hello world\n')
hello world


class FalszerzPliku:
    def write(self, string):
        # zrobi co z acuchem

import sys
sys.stdout = FalszerzPliku()
print kilkaObiektow            # przekazanie do metody write danej klasy

python script.py < plikwejsciowy > plikwyjsciowy
python script.py | filtr


*** Strona 88-89 ****************************************************************

>>> if 1:
...     print 'prawda'
...
prawda

>>> if not 1:
...    print 'prawda'
... else:
...    print 'falsz'
...
falsz

>>> x = 'zabojca krolika'
>>> if x == 'rogera':
...     print "jak sie ma jessica?"
... elif x == 'pluskwy':
...     print "co jest, doktorku?"
... else:
...     print 'Uciekaj! Uciekaj!'
...
Uciekaj! Uciekaj!

>>> wybor = 'szynka'
>>> print {'mielonka': 1.25,   # 'switch' wykorzystujcy sownik
...        'szynka': 1.99,     # test has_key() dla przypadku domylnego
...        'jajka': 0.99,
...        'bekon': 1.10}[wybor]
1.99

>>> if wybor == 'mielonka':
...    print 1.25
... elif wybor == 'szynka':
...    print 1.99
... elif wybor == 'jajka':
...    print 0.99
... elif wybor == 'bekon':
...    print 1.10
... else:
...   print 'Zly wybor'
...
1.99


*** Strona 90-92 ****************************************************************

x = 1
if x:
    y = 2
    if y:
        print 'blok2'
    print 'blok1'
print 'blok0'

L = ["Dobry",
     "Zly",
     "Brzydki"]          # otwarte pary mog zajmowa wiele wierszy

if a == b and c == d and   \
   d == e and f  == g:
   print 'stare'            # lewe ukoniki pozwalaj na kontynuacj

if (a == b and c == d and
    d == e and e == f):
    print 'nowe'            # nawiasy rwnie to umoliwiaj

x = 1; y = 2; print x       # wicej ni jedna prosta instrukcja

if 1: print 'hello'         # prosta instrukcja w wierszu nagwkowym


*** Strona 93 *******************************************************************

>>> 2 < 3, 3 < 2       # mniej ni: zwraca 1 lub 0
(1, 0)

>>> 2 or 3, 3 or 2     # zwraca lewy operand, jeli jest on prawdziwy
(2, 3)                 # w przeciwnym wypadku zwraca prawy operand
>>> [] or 3            # (niezalenie od jego prawdziwoci)
3
>>> [] or {}
{}

>>> 2 and 3, 3 and 2   # zwraca lewy operand, jeli to fasz
(3, 2)                 # w przeciwnym wypadku zwraca prawy operand
>>> [] and {}          # (niezalenie od jego prawdziwoci)
[]
>>> 3 and []
[]


*** Strona 95 *******************************************************************

>>> while 1:
...     print 'Zatrzymaj mnie klawiszami Ctrl-C!'

>>> x = 'mielonka'
>>> while x:
...     print x,
...     x = x[1:]         # odcina pierwszy znak od x
...
mielonka ielonka elonka lonka onka nka ka a

>>> a=0; b=10
>>> while a < b:         # jeden ze sposobw na zliczanie w ptli
...     print a,
...     a = a + 1
...
0 1 2 3 4 5 6 7 8 9


*** Strona 96-97 ****************************************************************

while 1: pass            # zatrzymuje si za pomoc Ctrl-C!


x = 10
while x:
    x = x-1
    if x % 2 != 0: continue         # gdy nieparzyste - pomi print
    print x,


# y = some value
x = y / 2
while x > 1:
    if y % x == 0:                     # reszta z dzielenia
        print y, 'ma podzielnik', x
        break                          # pominicie else
    x = x-1
else:                                  # normalne wyjcie
    print y, 'liczba pierwsza'


*** Strona 98-101 ***************************************************************

>>> for x in ["mielonka", "jajka", "szynka"]:
...     print x,
...
mielonka jajka szynka


>>> sum = 0
>>> for x in [1, 2, 3, 4]:
...     sum = sum + x
...
>>> sum
10
>>> ilocz = 1
>>> for pozycja in [1, 2, 3, 4]: ilocz = ilocz * pozycja
...
>>> ilocz
24


>>> S, T = "drwal", ("i", "dobrze", "mu", "tak")

>>> for x in S: print x,
...
d r w a l

>>> for x in T: print x,
...
i dobrze mu tak 

>>> T = [(1, 2), (3, 4), (5, 6)]
>>> for (a, b) in T:                # tu dziaa przypisanie krotki
...     print a, b
...
1 2
3 4
5 6


>>> pozycje = ["aaa", 111, (4, 5), 2.01]    # zbir obiektw
>>> testy = [(4, 5), 3.14]                  # klucze wyszukiwania
>>> 
>>> for klucz in testy:                     # dla wszystkich kluczy
...    for pozycja in pozycje:              # dla wszystkich pozycji
...        if pozycja == klucz:             # sprawdzanie dopasowania
...            print klucz, "znaleziono"
...            break
...    else:
...        print klucz, "nie znaleziono!"
...
(4, 5) znaleziono
3.14 nie znaleziono!


>>> for klucz in testy:            # dla wszystkich kluczy
...     if klucz in pozycje:       # pozwlmy Pythonowi sprawdzi dopasowanie
...         print klucz, "znaleziono"
...     else:
...         print klucz, "nie znaleziono!"
...
(4, 5) znaleziono
3.14 nie znaleziono!


>>> seq1 = "kulka"
>>> seq2 = "kurka"
>>>
>>> res = []                # rozpoczynamy od pustej listy
>>> for x in seq1:          # skanujemy pierwsz sekwencj
...     if x in seq2:       # czy wystpuje take w drugiej sekwencji?
...        res.append(x)    # dopisanie na koniec wyniku
...
>>> res
['k', 'u', 'k', 'a']


plik = open("nazwa", "r")
while 1:
    wiersz = plik.readline()  # pobierz nastpny wiersz, jeli istnieje
    if not wiersz: break      # wyjcie z ptli na kocu pliku (pusty acuch)
         W tym miejscu przetwarzanie wiersza

plik = open("nazwa", "r")
for wiersz in file.readlines():       #  odczyt listy wierszy
    W tym miejscu przetwarzanie wiersza


*** Strona 101-102 **************************************************************

>>> range(5), range(2, 5), range(0, 10, 2)
([0, 1, 2, 3, 4], [2, 3, 4], [0, 2, 4, 6, 8])


>>> X = 'mielonka'
>>> for pozycja in X: print pozycja,      # prosta iteracja
...
m i e l o n k a


>>> i = 0
>>> while i < len(X):                     # iteracja za pomoc while
...     print X[i],; i = i+1
...
m i e l o n k a


>>> for i in range(len(X)): print X[i],   # indeksowanie rczne
...
m i e l o n k a


>>> for i in range(3): print i, 'Pytony'
...
0 Pytony
1 Pytony
2 Pytony


***kod do wicze znajduje si w katalogu "rozwiazania"***