Zatím jsme používali jen výrazy pro proměnné typu Tohle je číslo nebo Tohle je text.
Reprezentace těchto proměnných v počítači je uskutečněna pomocí datových typů.
Způsob reprezentace prozradí následující tabulka:
Název datového typu | Jak daný datový typ reálně vypadá |
---|---|
int | celé číslo |
double | desetinné číslo |
string | text |
char | znak |
boolean | true nebo false |
Proměnná je konkrétní reprezentace datového typu v programu. V příkladu tématu Datové typy v Pythonu je proměnná a typu string.
Příklad:
Určete u jednotlivých položek a - j, jaká hodnota bude v proměnné a a v proměnné b po následujících operacích:
a = 10
b = 20
a = b
Další příklad:
V jazyku Python se nedefinují datové typy. Každá - jinak bezejmenná - proměnná si přiřadí vlastní datový typ.
Příklad:
a = "Hello world"
> Do proměnné a se načte "Hello world" jako string. V momentě, kdy by uživatel chtěl pracovat s proměnnou a jako s číslem, překladač vyhodí chybu.
Převedení datového typu na jiný datový typ.
Pokud ve vstupu do programu vložíte do proměnné cisloJakoString hodnotu "10", uloží se také jako string, pro přístup k ní jako k číslu se musí použít tzv. přetypování.
Příklad:
a = int(cisloJakoString)
Zdrojový kód ke stažení - datove_typy.py
#Základní proměnná a její výpis a = "Hello world" print(a) #Přetypování cisloJakoString = input("Zadej číslo: ") a = int(cisloJakoString) print (a) #Funguje to i bez přetypování, proč? cisloJakoString = input("Zadej číslo: ") a = cisloJakoString print (a) #Tohle už vyhodí chybu cisloJakoString = input("Zadej číslo: ") a = cisloJakoString b = 10 print (a + b) #Správné řešení je takto cisloJakoString = input("Zadej číslo: ") a = int(cisloJakoString) b = 10 print (a + b) #Co když vám ale uživatel do vstupu nezadá číslo?