Python 3 -- úvod

Python 3 je vysokoúrovňový interpretovaný programovací jazyk.

Vysokoúrovňový znamená v princípe to, že v ňom programátor musí riešiť menej technických detailov (napríklad alokáciu a dealokáciu pamäte) a môže sa viac sústrediť na riešenie samotného problému.

Pozrime sa teraz na význam slova interpretovaný.

Interpretované vs kompilované jazyky

Pri vykonávaní programu počítačom sa musí program najprv preložiť do strojového kódu -- primitívneho programovacieho jazyka, ktorému rozumie procesor.

Dva najbežnejšie prístupy k riešeniu tohto problému sú kompilácia a interpretácia.

Zopár dôsledkov toho, že Python 3 je interpretovaný:

Poďme programovať

Program v Pythone nemá žiadne povinné časti (ako main(), alebo begin ... end.), jednoducho rovno píšete príkazy. Prázdny súbor je teda tiež korektný program v Pythone, ktorý nerobí nič.

Príkazy v Pythone sa bežne neukončujú bodkočiarkou, avšak každý musí byť na samostatnom riadku.

Výstup

Na vypisovanie slúži funkcia print(), ktorá vypíše svoj argument a koniec riadka.

print("hello world!")

Ak dáte funkcii print() viac argumentov, vypíše ich oddelené medzerou.

print("jablko", 4.2, 47)

Ak nechcete, aby print() vypísal na záver koniec riadka, môžete mu to zakázať pridaním špeciálneho argumentu end=""

print("jablko ", end="") # nevypíše koniec riadka
print("hruska") # vypíše koniec riadka

Premenné

Premenné v Pythone netreba deklarovať, môžete ich rovno použiť. Prvé použitie premennej však musí byť priradenie do nej.

x = 47
print(x - 5) # ok, vypíše 42
print(y * 2) # chyba, program spadne
y = 42 

Premenné ako také nemajú typ, do jednej premennej teda môžete postupne priradiť celé číslo (int), reálne číslo (float) aj reťazec (str). Hodnoty, ktoré do premenných priradzujete, však už typ majú.

x = 47
print(x - 5) # ok, vypíše 42
x = 42.5
print(x + 4.5) # ok, vypíše 47.0
x = "štyridsaťsedem"
print(x) # ok, vypíše štyridsaťsedem
print(x - 5) # chyba, od reťazcov sa nedajú odčítavať čísla

Vstup

Na načítanie vstupu slúži funkcia input(), ktorá načíta jeden riadok zo vstupu a vráti ho ako reťazec. Program, ktorý dvakrát zopakuje vstup, teda môže vyzerať takto:

line = input()
print(line)
print(line)

Funkcia input() vám vráti celý riadok ako jeden reťazec. Ak máte v riadku viac slov, môžete si ho rozsekať na slová pomocou metódy .split() (tá funguje všeobecne na reťazcoch), ktorá vám vráti pole obsahujúce jednotlivé slová.

line = input()
arr = line.split()
print(arr[2])
print(arr[0])

Keď potrebujete reťazec skonvertovať na celé číslo, môžete použiť funkciu int(), keď na reálne, funkciu float().

line = input()
x = int(line)
print(x + 47)

if, while

Blokové príkazy ako if a while fungujú rovnako, ako v iných jazykoch (Pascal, C, C++, Java). Majú však inú syntax:

if <podmienka>:
  <prikaz-vnutri-ifu>
  <prikaz-vnutri-ifu>
  ...
<prikaz-mimo-ifu>
...

teda napríklad

if x > 7 and y < 12:
  print("x je viac ako sedem")
  print("y je menej ako dvanásť")
z = x + y