Python Casting
×Skrýt obsahVýukový program Python
Naučte se Python
- Programovací jazyk Python
- Základy Pythonu
- Datové typy Pythonu
- Podmínky Pythonu
- Python smyčky
- Třídy a funkce Pythonu
- Třída Python
- Moduly Pythonu
- Další kroky
Přetypování nebo převod typu v Pythonu umožňuje přetypování nebo převod jedné hodnoty na jinou. Obecně se typové odlévání nebo konverze dělí na dvě části:
- Implicitní typ casting/konverze
- Explicitní typové obsazení/konverze
Podívejme se podrobně na každý typ odlitku.
Implicitní typ casting/konverze
Implicitní přetypování nebo konverzi typu provádí Python Interpreter. Některé klíčové body, které je třeba mít na paměti ohledně implicitního přetypování nebo konverze, jsou:
- Casting nebo konverzi typu provádí Python Interpreter automaticky
- Python Interpreter provede implicitní konverzi nebo přetypování pouze tehdy, když nedojde ke ztrátě dat
- Python Interpreter provede implicitní konverzi nebo přetypování pouze v případě, že jsou oba příslušné typy kompatibilní pro přetypování.
Podívejme se na několik příkladů převodu implicitního typu nebo přetypování. V níže uvedeném příkladu máme dvě proměnné, jednu typu integer a druhou typu float. Float je považován za vyšší datový typ, protože umožňuje větší rozsah hodnot ve srovnání s celočíselným typem. Když se tedy pokusíme sečíst dvě čísla, každé typu float a integer, výsledné číslo je vždy vyššího datového typu – v tomto případě float. Je tomu tak proto, aby nedocházelo ke ztrátě dat nebo informací, protože celočíselné hodnoty mohou být stále přizpůsobeny typům float.
Poznámka: používáme |_+_| metoda pro kontrolu datového typu dané proměnné

V tomto případě byly obě zahrnuté proměnné čísla a bylo možné implicitní typové obsazení. Někdy je však potřeba explicitně přetypovat hodnoty mezi nekompatibilními datovými typy, jako jsou řetězce a čísla. Python Interpreter nemůže implicitně převádět hodnoty a vyvolá chybu, jak je uvedeno níže.

V takovém případě použijeme explicitní převod typu nebo přetypování.
Explicitní typové obsazení/konverze
Explicitní přetypování je užitečné, když Python Interpreter nemůže implicitně převádět mezi typy např. řetězce k číslům. V tomto používáme vestavěné metody castingu jako |_+_|, |_+_|, str()` atd. k převodu jednoho typu na jiný.
V níže uvedeném příkladu nejprve explicitně přeneseme stringified number do float pomocí |_+_| a poté sečtěte čísla.
