Converteer String naar Float in Python
Python definieert typeconversiefuncties om het ene gegevenstype rechtstreeks naar het andere te converteren. Dit artikel is bedoeld om informatie te geven over het converteren van de string naar float. In Python kunnen we float() gebruiken om String naar float te converteren. en we kunnen int() gebruiken om een String naar een geheel getal te converteren.
Input: '33.28' Output: 33.28 # float Explanation: int in input and float in output
Tekenreeks naar zwevend converteren
Hieronder staan de lijsten met methoden die we in dit artikel zullen behandelen:
- Parseer een string naar een float met float()
- Converteer tekenreeks naar zwevend met gespecificeerde decimalen
- Converteer tekenreeks naar zwevend met behulp van Numpy
- FAQ
Tekenreeks naar zwevend converteren
In Python kunnen we het String-datatype converteren naar float door een ingebouwde methode float te gebruiken die het datatype van de string die erin wordt doorgegeven converteert.
Python3
string> => '33.28'> > # using float method to convert string to float> num> => float> (string)> > print> (num)> print> (> type> (num))> |
Uitgang:
33.28
Python-programma om een string naar een float te parseren met float()
Dit functie wordt gebruikt om elk gegevenstype naar een drijvende-kommagetal te converteren. Deze methode accepteert slechts één parameter en die is ook optioneel om te gebruiken. Als er geen argument wordt doorgegeven, retourneert de methode 0.
Python3
string> => '3.141'> > print> (string)> print> (> type> (string))> > # syntax - float()> Float> => float> (string)> > print> (> Float> )> print> (> type> (> Float> ))> |
Uitgang:
3.141 3.141
Tijdcomplexiteit: O(1), omdat er een vast aantal bewerkingen wordt uitgevoerd, ongeacht de grootte van de invoer.
Hulpruimte: O(1), aangezien de hoeveelheid geheugen die door de code wordt gebruikt niet afhankelijk is van de grootte van de invoer.
ValueError-uitzondering
In dit voorbeeld proberen we a tekenreeks in een geheel getal en dan een vlotter. In de uitvoer kunnen we zien dat we een string-floatgetal niet kunnen omzetten in een geheel getal, waardoor we een waardefout krijgen.
Python3
string> => '55.567'> > Float> => float> (> int> (string))> > print> (> type> (> Float> ))> > print> (> 'Float Value ='> ,> Float> )> |
Uitgang:
ValueError Traceback (most recent call last) in () 1 string = '55.567' 2 ---->3 Float = float(int(string)) 4 5 print(type(Float)) ValueError: ongeldige letterlijke waarde voor int() met grondtal 10: '55.567'
Converteer tekenreeks naar zwevend met gespecificeerde decimalen
Om een string te converteren naar een float met een bepaald aantal decimalen, kun je de float () functie in Python gebruiken, samen met stringopmaak.
Python3
string_number> => '55.5675751'> decimal_points> => 2> > #converting string to float> float_number> => float> (string_number)> #using .format method to print upto decimal point> formatted_float> => '{:.{}f}'> .> format> (float_number, decimal_points)> > print> (formatted_float)> |
Uitgang:
55.57
Converteer tekenreeks naar zwevend met behulp van Numpy
In Numpy hebben we een ‘numpy.float64’, een ingebouwde methode in de Numpy-module die de tekenreekswaarde omzet in float.
Hier is een voorbeeld ervan.
Python3
import> numpy as np> > my_str> => '55.567'> float_number> => np.float64(my_str)> print> (float_number)> print> (> type> (float_number))> |
Uitgang:
55.567
Veelgestelde vragen over float- en string-type gesprekken
Vraag: Waarom moet ik float naar string converteren?
Antwoord: Soms moeten we de float-waarde omzetten in een string-waarde, omdat we de methode willen gebruiken die er in Python alleen is voor het stringtype, bijvoorbeeld aaneenschakeling van tekenreeksen .
Vraag: Waarom moeten we een string omzetten in een float?
Antwoord: Als we per vereiste de methode willen gebruiken die beschikbaar is voor het float-datatype, dan zullen we de string omzetten in float-waarde, bijvoorbeeld toevoeging .