Konverter streng til flydende i Python

Python definerer typekonverteringsfunktioner til direkte at konvertere en datatype til en anden. Denne artikel har til formål at give oplysninger om konvertering af strengen til float. I Python kan vi bruge float() til at konvertere String til float. og vi kan bruge int() til at konvertere en streng til et heltal.

 Input:  '33.28' Output: 33.28 # float Explanation: int in input and float in output 

Konvertering af streng til flydende

Nedenfor er lister over metoder, som vi vil dække i denne artikel:

  • Parse en streng til en float ved hjælp af float()
  • Konverter streng til flydende med specificerede decimaler
  • Konverter streng til flydende ved hjælp af Numpy
  • FAQ

Konvertering af streng til flydende

I Python kan vi konvertere String datatype til float ved at bruge en indbygget metode float, som konverterer datatypen for strengen, der sendes i den.

Python3




string> => '33.28'> > # using float method to convert string to float> num> => float> (string)> > print> (num)> print> (> type> (num))>

Produktion:

33.28 

Python-program til at parse en streng til en float ved hjælp af float()

Det her fungere bruges til at konvertere enhver datatype til et flydende kommatal. Denne metode accepterer kun én parameter, og den er også valgfri at bruge. Hvis intet argument sendes, returnerer metoden 0.

Python3




string> => '3.141'> > print> (string)> print> (> type> (string))> > # syntax - float()> Float> => float> (string)> > print> (> Float> )> print> (> type> (> Float> ))>

Produktion:

3.141 3.141 

Tidskompleksitet: O(1), da der er et fast antal operationer, der udføres uanset størrelsen af ​​input.
Hjælpeplads: O(1), da mængden af ​​hukommelse, der bruges af koden, ikke afhænger af størrelsen af ​​input.

ValueError Undtagelse

I dette eksempel forsøger vi at konvertere a streng til et heltal og så en flyder. I outputtet kan vi se, at vi ikke kan konvertere et strengfloatnummer til et heltal, så vi får en værdifejl.

Python3




string> => '55.567'> > Float> => float> (> int> (string))> > print> (> type> (> Float> ))> > print> (> 'Float Value ='> ,> Float> )>

Produktion:

 ValueError Traceback (most recent call last) in () 1 string = '55.567' 2 ---->3 Float = float(int(streng)) 4 5 print(type(Float)) ValueError: ugyldig literal for int() med base 10: '55.567' 

Konverter streng til flydende med specificerede decimaler

For at konvertere en streng til en float med et specificeret antal decimaler, kan du bruge float ()-funktionen i Python sammen med strengformatering.

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

Produktion:

55.57 

Konverter streng til flydende ved hjælp af Numpy

I Numpy har vi en 'numpy.float64', som er en indbygget metode i Numpy-modulet, der konverterer strengværdien til float.

Her er et eksempel på det.

Python3




import> numpy as np> > my_str> => '55.567'> float_number> => np.float64(my_str)> print> (float_number)> print> (> type> (float_number))>

Produktion:

55.567 

Ofte stillede spørgsmål om float- og strenglignende samtaler

Q: Hvorfor skal du konvertere float til streng?

Svar: Nogle gange er vi nødt til at konvertere flydende værdi til strengværdi, fordi vi ønsker at bruge metoden, som kun er der i Python for strengtype, f.eks. strengsammenkædning .

Q: Hvorfor skal vi konvertere en streng til en float?

Svar: Hvis vi ønsker at bruge den metode, der er tilgængelig for float-datatypen, konverterer vi strengen til float-værdi, f.eks. addition .