.: Ad:.

18 września 2011

Programuj w Pythonie - odcinek 2.

Na wstępie tego artykułu zajrzymy pod maskę Pythona, o ile można tak to powiedzieć. Korzystając z terminala wydajemy komendę:

python

Powinniśmy otrzymać coś mniej więcej podobnego:


Zwrócić należy uwagę, iż całość zakończona jest nietypowymi znakami, sugerującymi, iż znajdujemy się w powłoce Pythona.
Pierwsza informacja, jaką można tutaj odczytać to wersja Pythona (jak widać 2.6.5). Pozostałe komendy są chyba jasne, każdy może je wykonać samodzielnie. My wykonamy coś zupełnie innego.
Wykonajmy teraz następującą operację:

print 2 + 2

Powinniśmy dostać wynik postaci:

>>> print 2 + 2
4
>>>


Proszę zauważyć, że wpisaliśmy komendę "print" z małej litery. Czy ma to znaczenie? Okazuje się, że tak! Sprawdźmy co interpreter zwróci w takiej sytuacji:

>>> Print 2 + 2
  File "<stdin>", line 1
    Print 2 + 2
          ^
SyntaxError: invalid syntax
>>>


Otrzymujemy błąd, gdyż słowo Print nie jest znane interpreterowi (duża litera zrobiła swoje). Pobawmy się teraz zmiennymi:

var = 2 + 2

Ta komenda nie spowoduje żadnych reakcji widocznych "od razu". Pojawi się tylko znak zachęty postaci ">>>". Nie znaczy to, że popełniliśmy kolejny błąd. Python stworzył zmienną o nazwie "var". Jest w niej przechowywany wynik działania 2 + 2. Sprawdźmy to:

print var

Powinniśmy otrzymać 4 na ekranie. Kolejna sprawa - wykonajmy komendę:

print var * 5

Otrzymamy wynik mnożenia zmiennej var przez pięć. Ważne jest tu jednak to, że sama zmienna się nie zmieniła, co każdy może sprawdzić.
Zobaczmy, co jeszcze możemy zrobić ze zmiennymi. Wpiszmy:

>>> strng = 'I Python jest Twoim wujem (jak powiedzialby sir T. Pratchett)'

a następnie:

print strng

Stworzyliśmy zmienna typu string - łańcuch znaków (dla wielbicieli twórczości Pratchetta wszystko jest jasne ;D). Od teraz (aż do końca tej instancji Pythona) wartość naszej zmiennej będzie właśnie tak ja wyżej, chyba że ją zmienimy. Zróbmy coś na pierwszy rzut oka dziwnego. Pomnóżmy nasz łańcuch znaków przez 3 i sprawdźmy wynik:

print strng * 3

Zaskoczeni? Pewnie przyszedł czas, aby powiedzieć sobie dlaczego tak właśnie się stało, wszak po operacjach matematycznych oczekujemy ciut innego działania, bo przecież var * 3 daje 12 a nie 444, co już widzieliśmy. Otóż Python wie, że strng to nie liczba. Nawet nie próbuje tego mnożyć stosując matematyczne zasady działania. Nie można przecież wykonywać działań matematycznych na obiektach takich jak zmienne typu string.
Powołajmy teraz do istnienia zmienną s przechowującą znak 4:

s = '4'
print s

Wygląda, że s zawiera liczbę całkowitą (integer) 4, ale tak nie jest! Sprawdźmy:

print s*4

Wniosek: apostrofy wskazują interpreterowi, że ma do czynienia ze zmienną string. Można to sprawdzić na jeszcze jeden sposób:

print type(s)

Otrzymujemy:

<type 'str'>

Można tej zmiennej użyć jako zmiennej liczbowej:

print int(s) * 2

Dokonaliśmy konwersji znaku do liczby integer i pomnożylismy wynik p rzez 2 otrzymując liczbę 16.
Aby zakończyć działanie interpretera wydajemy komendę

quit()

W następnym artykule poznamy podstawy tworzenia pętli.

Brak komentarzy:

Prześlij komentarz