logo

Skriv Konvertering i Python

Typekonvertering betyr å endre datatypen til en verdi. For eksempel konvertere et heltall (5) til en flyte (5.0) eller en streng ('10') til et heltall (10). I Python er det to typer typekonvertering:

  1. Implisitt konvertering: Python endrer datatypen av seg selv mens du kjører koden for å unngå feil eller tap av data.
  2. Eksplisitt konvertering: Du endrer datatypen med vilje ved å bruke funksjoner som int() float() eller str().

Implisitt typekonvertering

I implisitt konvertering Python konverterer automatisk én datatype til en annen under uttrykksevaluering. Dette skjer vanligvis når en mindre datatype som int kombineres med en større som float i en operasjon. Eksempel:

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)) 

Produksjon
x:  y:  z = 20.6 z :  

Forklaring: x er et heltall og og er en flyte. I z = x + y Python konverterer automatisk x å flyte for å unngå tap av data Med en flyte 0,6.



Eksplisitt typekonvertering

Eksplisitt konvertering (eller type casting) er når du manuelt konverterer datatypen til en verdi ved å bruke Python innebygde funksjoner . Dette er nyttig når du vil kontrollere hvordan dataene tolkes eller manipuleres i koden din. Noen vanlige type støpefunksjoner inkluderer:

  • int() konverterer en verdi til et heltall
  • flyte() konverterer en verdi til et flyttall
  • str() konverterer en verdi til en streng
  • bool() konverterer en verdi til en boolsk (sant/usant)

Eksempel:

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

Produksjon
100  

Forklaring: a = int(s) vi konverterer det eksplisitt til et heltall. Denne manuelle typeendringen kalles eksplisitt typekonvertering og a blir 100 av typen.

Eksempler på vanlige typekonverteringsfunksjoner

Eksempel 1: Konvertering av en binær streng

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

Produksjon
18 10010.0 

Forklaring:

  • int(s 2) tolker den binære strengen '10010' som heltall 18.
  • flyte(r) konverterer strengen til et flyttall.

Eksempel 2: ASCII heksadesimal og oktal konvertering

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

Produksjon
ASCII of '4': 52 56 in Hex: 0x38 56 in Octal: 0o70 

Forklaring:

  • ord returnerer ASCII-koden til tegnet '4'.
  • hex() og okt() konvertere hele tallet 56 til dets henholdsvis heksadesimale og oktale representasjoner.

Eksempel 3 : String for å tuple sett og liste

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

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

Forklaring:

  • tuppel(er) holder alle tegn inkludert duplikater i orden.
  • sett(er) fjerner duplikater og returnerer en uordnet samling.
  • liste(r) returnerer en liste over tegn fra strengen.

Eksempel 4: Andre konverteringer – kompleks strengordbok

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)) 

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

Forklaring:

ny linje i python
  • kompleks(1 2) lager et komplekst tall med reell del 1 og imaginær del 2.
  • str(a) konverterer heltall 1 til strengen '1'.
  • dikt (tup) oppretter en ordbok fra en sekvens av nøkkelverdi-tupler.
Lag quiz