logo

Zadajte konverziu v Pythone

Konverzia typu znamená zmenu typu údajov hodnoty. Napríklad konvertovanie celého čísla (5) na float (5.0) alebo reťazca ('10') na celé číslo (10). V Pythone existujú dva typy konverzie typov:

  1. Implicitná konverzia: Python počas spúšťania kódu sám mení typ údajov, aby sa predišlo chybám alebo strate údajov.
  2. Explicitná konverzia: Typ údajov zmeníte zámerne pomocou funkcií ako int() float() alebo str().

Konverzia implicitného typu

In implicitná konverzia Python počas vyhodnocovania výrazov automaticky konvertuje jeden dátový typ na iný. Zvyčajne sa to stane, keď sa v operácii skombinuje menší typ údajov, ako je int, s väčším typom údajov, ako je float. Príklad:

Python
x = 10 # Integer y = 10.6 # Float z = x + y print('x:' type(x)) print('y:' type(y)) print('z =' z) print('z :' type(z)) 

Výstup
x:  y:  z = 20.6 z :  

Vysvetlenie: x je celé číslo a a je plavák. In z = x + y Python sa automaticky konvertuje x plávať, aby nedošlo k strate údajov s plavák 0,6.



Explicitná konverzia typu

Explicitná konverzia (alebo pretypovanie) je, keď manuálne konvertujete dátový typ hodnoty pomocou Pythonu vstavané funkcie . Je to užitočné, keď chcete ovládať, ako sa údaje vo vašom kóde interpretujú alebo s nimi manipuluje. Niektoré bežné funkcie odlievania typu zahŕňajú:

  • int() prevedie hodnotu na celé číslo
  • float() prevedie hodnotu na číslo s pohyblivou rádovou čiarkou
  • str() prevedie hodnotu na reťazec
  • bool() konvertuje hodnotu na boolovskú hodnotu (pravda/nepravda)

Príklad:

Python
s = '100' # String a = int(s) print(a) print(type(a)) 

Výstup
100  

Vysvetlenie: a = int(s) explicitne ho prevedieme na celé číslo. Táto manuálna zmena typu sa nazýva explicitná konverzia typu a stáva sa typom 100.

pandy lok

Príklady bežných funkcií konverzie typov

Príklad 1: Konverzia binárneho reťazca

Python
s = '10010' a = int(s 2) print(a) b= float(s) print(b) 

Výstup
18 10010.0 

Vysvetlenie:

  • int(s 2) interpretuje binárny reťazec „10010“ ako celé číslo 18.
  • plavák(y) skonvertuje reťazec na číslo s pohyblivou rádovou čiarkou.

Príklad 2: ASCII hexadecimálna a osmičková konverzia

Python
c = '4' print('ASCII of '4':' ord(c)) print('56 in Hex:' hex(56)) print('56 in Octal:' oct(56)) 

Výstup
ASCII of '4': 52 56 in Hex: 0x38 56 in Octal: 0o70 

Vysvetlenie:

  • slovo(á) vráti ASCII kód ​​znaku '4'.
  • hex() a okt() previesť celé číslo 56 na jeho hexadecimálne a osmičkové znázornenie.

Príklad 3 : Reťazec do Tuple Set a List

Python
s = 'geeks' print('To tuple:' tuple(s)) print('To set:' set(s)) print('To list:' list(s)) 

Výstup
To tuple: ('g' 'e' 'e' 'k' 's') To set: {'e' 'g' 'k' 's'} To list: ['g' 'e' 'e' 'k' 's'] 

Vysvetlenie:

  • n-tice udržiava všetky znaky vrátane duplikátov v poriadku.
  • sada(y) odstráni duplikáty a vráti neusporiadanú kolekciu.
  • zoznam(y) vráti zoznam znakov z reťazca.

Príklad 4: Iné prevody – Komplexný reťazcový slovník

Python
a = 1 tup = (('a' 1) ('f' 2) ('g' 3)) print('To complex:' complex(1 2)) print('To string:' str(a)) print('To dict:' dict(tup)) 

Výstup
To complex: (1+2j) To string: 1 To dict: {'a': 1 'f': 2 'g': 3} 

Vysvetlenie:

  • komplex (1 2) vytvorí komplexné číslo s reálnou časťou 1 a imaginárnou časťou 2.
  • str(a) skonvertuje celé číslo 1 na reťazec '1'.
  • diktát (tup) vytvorí slovník zo sekvencie n-tic kľúč – hodnota.
Vytvoriť kvíz