logo

Skriv Konvertering i Python

Typkonvertering innebär att ändra datatypen för ett värde. Till exempel konvertera ett heltal (5) till ett float (5.0) eller en sträng ('10') till ett heltal (10). I Python finns det två typer av typkonvertering:

  1. Implicit konvertering: Python ändrar datatypen av sig själv medan koden körs för att undvika misstag eller dataförlust.
  2. Explicit konvertering: Du ändrar datatypen med avsikt med hjälp av funktioner som int() float() eller str().

Implicit typkonvertering

I implicit konvertering Python konverterar automatiskt en datatyp till en annan under uttrycksutvärdering. Detta händer vanligtvis när en mindre datatyp som int kombineras med en större som float i en operation. Exempel:

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

Produktion
x:  y:  z = 20.6 z :  

Förklaring: x är ett heltal och och är en flöte. I z = x + y Python konverterar automatiskt x att flyta för att undvika dataförlust Med en flöte 0,6.



Explicit typkonvertering

Explicit konvertering (eller typ casting) är när du manuellt konverterar datatypen för ett värde med Pythons inbyggda funktioner . Detta är användbart när du vill kontrollera hur data tolkas eller manipuleras i din kod. Några vanliga typer av gjutning inkluderar:

  • int() konverterar ett värde till ett heltal
  • flyta() konverterar ett värde till ett flyttal
  • str() konverterar ett värde till en sträng
  • bool() konverterar ett värde till ett booleskt värde (sant/falskt)

Exempel:

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

Produktion
100  

Förklaring: a = int(s) vi konverterar det uttryckligen till ett heltal. Denna manuella typändring kallas explicit typkonvertering och en blir 100 av typen.

Exempel på vanliga typkonverteringsfunktioner

Exempel 1: Konvertera en binär sträng

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

Produktion
18 10010.0 

Förklaring:

  • int(s 2) tolkar den binära strängen '10010' som heltal 18.
  • flottör(ar) konverterar strängen till ett flyttal.

Exempel 2: ASCII hexadecimal och oktal konvertering

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

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

Förklaring:

  • ord) returnerar ASCII-koden för tecknet '4'.
  • hex() och okt() konvertera heltal 56 till dess hexadecimala respektive oktala representationer.

Exempel 3 : Sträng till Tuple Set och List

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

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

Förklaring:

  • tuppel(ar) håller ordning på alla tecken inklusive dubbletter.
  • uppsättning(ar) tar bort dubbletter och returnerar en oordnad samling.
  • lista(r) returnerar en lista med tecken från strängen.

Exempel 4: Andra konverteringar – Complex String Dictionary

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

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

Förklaring:

  • komplex(1 2) skapar ett komplext tal med reell del 1 och imaginär del 2.
  • str(a) konverterar heltal 1 till strängen '1'.
  • dikt (tup) skapar en ordbok från en sekvens av nyckel-värde-tupler.
Skapa frågesport