Tak jako lidské jazyky, tak i ty počítačové mají gramatiku. Naštěstí nic tak složitého, jako je shoda přísudku s podmětem v příčestí minulém. U programovacích jazyků se střetnete s jinými termíny. Například podmínka, cyklus, operátor, příkaz, výraz a podobně.
Řada těchto věcí je plus minus společná všem programovacím jazykům. Jednotlivé jazyky se liší ale způsobem zápisu, tedy syntaxí. Třeba podmínka se vyskytuje snad ve všch programovacích jazycích, ale v Pythonu se zapisuje trochu jinak než například v jazyce C. Jiné řídící konstrukce tak obvyklé nejsou, například Python podporuje výjimky, kdežto jazyk C nikoli. Ten zas podporuje oproti Pythonu více druhů cyklů.
Nikde jsem bohužel nenašel přesné formální definice Pythoní gramatiky (popis lexikálního analyzeru za to nepovažuji, i když leccos napovídá), které by jednoznačně definovaly co je co. Proto zkusím jazyk Python popsat podle sebe, svého citu a znalostí o něm. Pokud možno tak, aby to bylo logické a snadno pochopitelné. Zcela vědomě se proto nebudu plně držet údajů v Language Reference. Berte to prosím jako můj osobní alternativní popis jazyka Python pro začátečníky.
Jazyk Python se dá rozdělit na 6 základních útvarů:
and del for is raise assert elif from lambda return break else global not try class except if or while continue exec import pass yield def finally in print
+ - * ** / // % << >> & | ^ ~ < > <= >= == != <>
( ) [ ] { } @ , : . ` = ; += -= *= **= /= //= %= &= |= ^= >>= <<=
Program bychom si mohli definovat jako sled příkazů. Ukázka programu, kde každý řádek představuje jeden příkaz:
jablon1 = 60 jablon2 = 48 celkem = jablon1 + jablon2 print "Úroda sadu je", celkem, "jablek."
Každý příkaz se skládá z jednoho nebo více výrazů. U Pythonu je velmi těžké stanovit jednoduše a přesně co je výraz a co už příkaz, kde je mezi nimi hranice.