2.1 Datové typy

Do proměnných lze vkládat několik typů dat (informací, hodnot).
 

Řetězcové hodnoty

typ str (string) - textřetězec, jakýkoliv sled znaků 

Řetězce (texty) jsou vždy ohraničené horními "uvozovkami" nebo 'apostrofy'!

Příklady řetězců:
'slovo'
's'   (písmeno)
"Řetězec může být i celá věta nebo odstavec... :-)"
'Fx-251/ +k   4%...!-?+§:>ů<'  (řetězec mohou tvořit libovolné znaky)
'6'   (řetězec tvořený číslicí)
"2 + 3 = 5"
" " (řetězec obsahující jednu mezeru)
Prázdný řetězec neobsahuje vůbec nic. Zapisuje se pomocí dvou uvozovek ""  nebo dvou apostrofů ''.

 

Číselné hodnoty

typ int (integer) - celá čísla
Celé číslo může mít libovolnou velikost.

Příklady celých čísel:
2
128
3584248
0
-1
-24

 

typ float (floating point number)  - destinná čísla (čísla s "plovoucí" desetinnou tečkou)
U desetinného čísla si Python pamatuje 15 desetinných míst.

Příklady desetinných čísel:
1.5
71832.40569
-0.00000002
-500.00

Python počítá pouze s desetinnými čísly, které mají desetinnou TEČKU!!!

 

typ NoneType - nic, prázdná hodnotamůže mít pouze jedinou hodnotu:
None, která znamená nic

 

Načtení číselných hodnot

Funkce input() načte vše, včetně zadaných čísel, jako řetězec. S čísly, která jsou řetězcem, nejde provádět matematické operace. Načtení celých čísel nebo desetinných čísel je možno dvěma způsoby:

1. způsob - načteme rovnou číselné hodnoty:
    a = int(input("Zadej celé číslo: ")) 
    b = float(input("Zadej číslo - s desetinnou tečkou: ")) 

2. způsob - číslo načteme jako řetězec a pak ho převedeme na požadovaný číselný typ:
    a = input("Zadej celé číslo: ") 
    a = int(a) 

    b = input("Zadej číslo - s desetinnou tečkou: ") 

    b = float(b) 

V praxi se využívají oba způsoby.

 

Logické hodnoty

typ bool (boolean) - může mít pouze jednu ze dvou možných hodnot:
      True - pravda
      False - nepravda

Klíčová slova True, False a None se píší s vekým písmenem na začátku. 
Ostatní klíčová slova se píší malými písmeny.

 

 
Rozšíření: 

Řetězce s uvozovkami

' "Pokud je řetězcem věta s uvozovkami, musíme ji uzavřít do apostrofů." '

" 'Text v apostrofech uzavřeme do uvozovek.' "

'Už brzy budu "odborník" na Python.'

"Všichni budou 'zírat'!"

 

Změna typu dat

převod čísla na řetězec - pomocí funkce str:
str(6)  -->  '6'
str(4.37)  -->  '4.37'
Na řetězec lze převést libovolné číslo.

Převod řetězce s číslem na celé číslo - pomocí funkce int:
int("62.8")  -->  62  Část čísla za desetinnou tečnou se odsekne.
Převod řetězce s destinným číslem na desetinné číslo - pomocí funkce float:
float("62,801")  -->  62.801

Převod desetinného čísla na celé číslo pomocí finkce int:
int(45.781)  -->  45  
int(-2,034)  -->  -2  
Část čísla za desetinnou tečnou se odsekne.

Převod celého čísla na desetinné číslo pomocí finkce float:
float(1)  -->  1.0  
float(-32)  -->  -32.0

 

Typ proměnné

Typ proměnné automaticky odpovídá typu vložených dat.

Pokud do proměnné vložíme hodnotu jiného typu nebo se změní typ vložených dat, změní se tím i typ proměnné.

 

Jaký typ má proměnná lze zjistit pomocí funkce type:
a = "počítač"
type(a)
 -->  <class 'str'>

a = 7.52
type(a)
  -->  <class 'float'>

a = "7.52"
type(a)
  -->  <class 'str'>

b = 512
type(b)
  -->  <class 'int'>

a_n = False
type(a_n)
  -->  <class 'bool'>