Lekce 3 - Proměnné a typový systém v Pythonu
Z minulé lekce, PyCharm a první konzolová aplikace v Pythonu, již umíme pracovat s prostředím PyCharm a vytvořit konzolovou aplikaci.
V tomto Python tutoriálu se podíváme na tzv. typový systém, ukážeme si základní datové typy a práci s proměnnými. Výsledkem bude jednoduchý program vypisující proměnnou.
Proměnné
Než začneme řešit datové typy, pojďme se shodnout na tom, co je to
proměnná (programátoři teď jistě odpustí zbytečné vysvětlování). Z
matematiky určitě znáte proměnnou (např. x
), do které jsme si
mohli uložit nějakou hodnotu, nejčastěji číslo. Proměnná je v
informatice naprosto totéž, je to místo v paměti počítače, kam si
můžeme uložit nějaká data (např. jméno uživatele, aktuální čas nebo
databázi článků).
V Pythonu je práce s proměnnými trochu odlišná než v některých
jiných programovacích jazycích. Ačkoli každá proměnná má svůj
datový typ, nemusíme jej předem specifikovat. Datový typ
proměnné je určen za běhu programu podle aktuálně uložené hodnoty. Když
například napíšeme x = 5
, Python automaticky
ví, že x
je celé číslo.
V Pythonu také nemusíme deklarovat proměnnou před tím, než ji začneme používat. Stačí jí jednoduše přiřadit hodnotu a Python za nás proměnnou vytvoří a přiřadí jí odpovídající datový typ.
Typový systém
Existují dva základní typové systémy, a to statický a dynamický.
Dynamický typový systém
Dynamický typový systém nás plně odstiňuje od toho, že proměnná má vůbec nějaký datový typ. Ona ho samozřejmě vnitřně stále má, ale jazyk to nedává najevo. Dynamické typování jde mnohdy tak daleko, že proměnné nemusíme ani deklarovat. Jakmile do nějaké proměnné něco uložíme a jazyk zjistí, že proměnná nebyla nikdy deklarována, sám ji založí. Do téže proměnné můžeme ukládat text, potom objekt uživatele a potom desetinné číslo. Jazyk se s tím sám popere a vnitřně automaticky změní datový typ. V těchto jazycích jde vývoj rychleji díky menšímu množství kódu. Zástupci jsou právě Python, dále např. PHP nebo Ruby.
Statický typový systém
Statický typový systém naopak striktně vyžaduje definovat typ proměnné
a tento typ je dále neměnný. Jakmile proměnnou jednou deklarujeme, není
možné její datový typ změnit. Jakmile se do textového řetězce pokusíme
uložit objekt uzivatel
, dostaneme vynadáno.
Python je dynamicky typovaný jazyk. Proměnné tedy
nemusíme deklarovat s jejich datovým typem. Díky tomu je vývoj v jazyce
rychlejší a jazyk se ze začátku lépe osvojuje. V případě dynamického
typování však nelze zdrojový kód automaticky kontrolovat, a když např.
někde očekáváme objekt uzivatel
, ale dostaneme místo toho
desetinné číslo, chyba se odhalí až za běhu a interpret program
shodí.
Základní datové typy
Pojďme si nyní něco naprogramovat, ať si nabyté znalosti trochu osvojíme. S teorií budeme pokračovat až příště. Řekněme si nyní tři základní datové typy:
- celá čísla:
int
, - desetinná čísla:
float
, - textový řetězec:
str
.
Program vypisující proměnnou
Založíme si nový projekt a pojmenujeme ho Vypis
(ke všem
příkladům si vždy založíme nový projekt).
Založení proměnné
Zkusíme si založit celočíselnou proměnnou a
. Dosadíme do
ní číslo 56
a její obsah vypíšeme do konzole:
a = 56
print(a)
V konzoli vidíme výstup:
Konzolová aplikace
56
Na prvním řádku jsme založili proměnnou a
a přiřadili jí
hodnotu 56
. Slouží k tomu operátor "rovná se" (=
).
Druhý příkaz je nám už známý, vypíše do konzole obsah proměnné
a
.
Desetinná proměnná
Pro desetinnou proměnnou bude kód vypadat takto:
a = 56.6
print(a)
V konzoli vidíme výstup:
Konzolová aplikace
56.6
Je to prakticky stejné jako s celočíselnou proměnnou. Jako desetinný
oddělovač používáme tečku (.
).
Zjištění typu proměnné
Pokud bychom potřebovali zjistit, jakého datového typu proměnná je,
uděláme to pomocí příkazu (funkce) type()
:
a = 5.56 print(type(a))
Ve výstupu vidíme:
Konzolová aplikace
<class 'float'>
Klíčového slova class
si nebudeme zatím
všímat, stačí vědět, že výstup funkce type()
si
přeložíme jako: typ proměnné je - float
.
To je pro dnešní lekci vše 🙂
V příští lekci, Načítání hodnot z konzole a parsování v Pythonu, se podíváme na načítání hodnot z konzole, parsování dat a poté si vytvoříme jednoduchou kalkulačku.
Měl jsi s čímkoli problém? Stáhni si vzorovou aplikaci níže a porovnej ji se svým projektem, chybu tak snadno najdeš.
Stáhnout
Stažením následujícího souboru souhlasíš s licenčními podmínkami
Staženo 1046x (573 B)
Aplikace je včetně zdrojových kódů v jazyce Python