Loeng 1: Python, sissejuhatus programmeerimisse Pythonis, Pythoni installeerimine, konsool, Jupyter, minu esimene programm, lihtne aritmeetika, sõne (string), funktsioon print¶

Viimati uuendatud 18.08.2025.

Koodinäited¶

1  Pythoni sisseehitatud andmetüübid¶

Andmetüüp ja selle esindaja ehk objekt on programmeerimises olulised mõisted. Erinevad andmetüübi objektid on kasulikud erinevates olukordades. Pythoniga tuleb kaasa mitmeid sisseehitatud andmetüüpe milledest tänases loengus tutvume põgusalt kolmega: täisarvud (int), kümnendmurd arvud (float) ja sõned/tähemärgid (str). Andmetüübid ja objektid on defineeritud Pythoni klassi abil. Klassi mõistet arutame põhjalikumalt tulevastes loengutes.

Joonis 1 kujutab visuaalselt programmeerimist Pythonis, Pythoni programmi ja selle erinevaid osi ning nende omavahelisi seoseid. Leia jooniselt klass. Kursuse jooksul seletame Joonisel 1 kujutatud skeemi sisu detailsemalt.

No description has been provided for this image
Joonis 1. Programmeerimine Pythonis. Pythoni programm ja selle osad.

2  Lihtne aritmeetika ja valik aritmeetika operaatoreid¶

Aritmeetiline operatsioon matemaatikas ja ka Pythonis on arvudega sooritatav liitmis-, lahutamis-, korrutamis- ja/või jagamistehe. Mõnikord nimetatakse aritmeetilisteks teheteks ka astendamist või muid tehteid arvudega. Tulevastes loengutes laiendame Pythoni operaatorite teemat (tehete järjekord, muud Pythoni operaatorid, operaatorite seos maagiliste (spetsiaalsete) meetoditega, Pythoni klassid jne.).

Operaator Operatsioon
+ summa (addition)
- vahe (subtraction)
* korrutamine (multiplication)
/ jagamine (division)
% jagamise jääk (modulus or remainder)
** astendamine (exponent or power)
// jagatise täisosa (floor division)

Aritmeetika tehteid täis- ja kümnendmurd arvudega:

In [1]:
6 / 3
Out[1]:
2.0
In [2]:
10.0 / 3.0
Out[2]:
3.3333333333333335
In [3]:
10 % 3
Out[3]:
1
In [4]:
10 ** 3
Out[4]:
1000
In [5]:
10 // 3
Out[5]:
3

Mitme operaatori kasutamine ühes tehtes. Siin kehtivad kooliaritmeetikast tuntud tehete järjekorra reeglid. Vajadusel saab tehete järjekorda juhtida kasutades sulge. Leiame:

$$ \frac{2 \cdot 20}{2^{2+1}} $$

In [6]:
(2*20) / 2**(2+1)
Out[6]:
5.0
In [7]:
2 * 20 / 2**(2+1)
Out[7]:
5.0

3  Sõne (string) ja sisseehitatud funktsioon print¶

3.1  Koodi kommenteerimine¶

Pythoni programmikoodi saab kommenteerida ehk lisada sellele inimloetavaid märkusi mida interpretaator ignoreerib. Kommentaare ei interpreteerita. Kommentaari lisamiseks kasuta #:

In [8]:
# See rida ei sisalda koodi...
# Interpretaator ignoreerib seda ja eelmist rida.

1 / 2  # Kommentaar: see rida teostab arvutuse 1/2.
Out[8]:
0.5

3.2  Sõne defineerimine¶

Pythoni andmetüüp sõne (str) ehk tavakeeles tekst on tähemärk või tähemärkide kogum. Proovime sisestada teksti:

In [9]:
Python
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
Cell In[9], line 1
----> 1 Python

NameError: name 'Python' is not defined

Pythoni interpretaator tõstatas veateate (erisuse). Interpretaator ei saanud sinu sisendist aru.

Sõne sisestamiseks peame kasutama jutumärke:

In [10]:
'Python'
Out[10]:
'Python'
In [11]:
"Python"
Out[11]:
'Python'
In [12]:
'''Python'''  # Vt. ka alla.
Out[12]:
'Python'
In [13]:
"""Python"""  # Vt. ka alla.
Out[13]:
'Python'

Kuidas kasutada jutumärke ' ja " sõne osana?

In [14]:
'Juulius ütles: "Olen maskott!".'
Out[14]:
'Juulius ütles: "Olen maskott!".'
In [15]:
"Juulius ütles: 'Olen maskott!'."
Out[15]:
"Juulius ütles: 'Olen maskott!'."
In [16]:
'''"Isa pahandas, 'Mina keeldun laulmast'", ta ütles emale.'''
Out[16]:
'"Isa pahandas, \'Mina keeldun laulmast\'", ta ütles emale.'

Märkus: väljastatud \ on nn. escape character, escape tag või exit tag, kus \' on ülakoma tähistav kirjapilt. Sarnaselt saame ka meie väljastada ülakoma või muid sümboleid (tulevastes loengutes räägime sellest rohkem). Proovime seda ise kasutada:

In [17]:
'"Isa pahandas, \'Mina keeldun laulmast\'", ta ütles emale.'
Out[17]:
'"Isa pahandas, \'Mina keeldun laulmast\'", ta ütles emale.'

Kuidas luua mitmerealisi sõnesid (multi-line string)?

In [18]:
'''Juulius 
Tipikas on 
tore maskott.'''
Out[18]:
'Juulius \nTipikas on \ntore maskott.'

Escape tag'i abil defineeritud spetsiaalne sümbol \n tähistab reavahetust. Proovime seda ise kasutada:

In [19]:
'Juulius \nTipikas on \ntore maskott.'
Out[19]:
'Juulius \nTipikas on \ntore maskott.'

Interpretaator mõistab sõnet milles puuduvad tähemärgid või muud sümbolid (k.a. tühik) ehk see on tühi (veateadet ei tõstatata):

In [20]:
''
Out[20]:
''

3.3  Sisseehitatud funktsioon print¶

Pythoniga tuleb kaasa mitmeid sisseehitatud funktsioone. Pythoni funktsioonid käituvad sarnaselt koolimatemaatikast tuntud funktsioonidega. Funktsioonid võtavad vastu argumendi või argumendid ja väljastavad neile vastava väljundi kasutades eelnevalt salvestatud juhiseid.

Pythoni funktsioon print prindib konsooli enda argumendi/d. Argumediks sobivad kõik selles loengus tutvustatud andmetüübid. Pythoni funktsiooni argument paigutatakse sulgude sisse.

In [21]:
print(6)
6
In [22]:
print(66.6)
66.6
In [23]:
print('666')
666
In [24]:
print(2 + 2)  # Tehe teostatakse enne funktsiooni print rakendamist.
4
In [25]:
print('Python on lahe.')
Python on lahe.
In [26]:
print('Juulius ütles: "Olen maskott!"')
Juulius ütles: "Olen maskott!"
In [27]:
print('''"Isa pahandas, 'Mina keeldun laulmast'", ta ütles emale.''')
"Isa pahandas, 'Mina keeldun laulmast'", ta ütles emale.
In [28]:
print('''Juulius 
Tipikas on 
maskott.''')
Juulius 
Tipikas on 
maskott.

Funktsioon print suudab vastu võtta mitut argumenti, argumente eristame komaga:

In [29]:
print('abc', 'd', 'e', 4)
abc d e 4

4  Minu esimene programm¶

Vastavalt pikaajalisele traditsioonile peetakse esimeseks programmiks nn. Hello, World! programmi. Programm väljastab konsooli lause Hello, World!.

In [30]:
print('Hello, World!')
Hello, World!

Lisad 1, 2 ja 3¶

Lisa 1: Integreeritud arenduskeskkonna Jupyter kasutamise juhend (Integrated Development Environment (IDE) Jupyter)
Lisa 2: Tehtud töö salvestamine TTÜ arvutisüsteemi arvutites
Lisa 3: Jupyteri koodirakk ja Markdown, HTML ning $\LaTeX$

















☻   ☻   ☻