Konwertuj ciąg na float w Pythonie
Python definiuje funkcje konwersji typów, aby bezpośrednio konwertować jeden typ danych na inny. Celem tego artykułu jest dostarczenie informacji na temat konwersji ciągu znaków na wartość zmiennoprzecinkową. W Pythonie możemy użyć float() do konwersji String na float. i możemy użyć int(), aby przekonwertować ciąg na liczbę całkowitą.
Input: '33.28' Output: 33.28 # float Explanation: int in input and float in output
Konwersja ciągu na zmiennoprzecinkowy
Poniżej znajduje się lista metod, które omówimy w tym artykule:
- Przeanalizuj ciąg znaków na wartość zmiennoprzecinkową za pomocą metody float()
- Konwertuj ciąg na zmiennoprzecinkowy z określonymi punktami dziesiętnymi
- Konwertuj ciąg na zmiennoprzecinkowy za pomocą Numpy
- Często zadawane pytania
Konwersja ciągu na zmiennoprzecinkowy
W Pythonie możemy przekonwertować typ danych String na float, korzystając z wbudowanej metody float, która konwertuje typ danych przekazanego w niej ciągu.
Python3
string> => '33.28'> > # using float method to convert string to float> num> => float> (string)> > print> (num)> print> (> type> (num))> |
Wyjście:
33.28
Program w Pythonie do analizowania ciągu znaków na liczbę zmiennoprzecinkową za pomocą metody float()
Ten funkcjonować służy do konwersji dowolnego typu danych na liczbę zmiennoprzecinkową. Ta metoda akceptuje tylko jeden parametr, którego użycie jest również opcjonalne. Jeśli nie zostanie przekazany żaden argument, metoda zwraca 0.
Python3
string> => '3.141'> > print> (string)> print> (> type> (string))> > # syntax - float()> Float> => float> (string)> > print> (> Float> )> print> (> type> (> Float> ))> |
Wyjście:
3.141 3.141
Złożoność czasowa: O(1), ponieważ wykonywana jest stała liczba operacji niezależnie od rozmiaru danych wejściowych.
Przestrzeń pomocnicza: O(1), ponieważ ilość pamięci wykorzystywanej przez kod nie zależy od rozmiaru danych wejściowych.
Wyjątek ValueError
W tym przykładzie próbujemy przekonwertować plik a ciąg znaków na liczbę całkowitą a potem pływak. Na wyjściu widzimy, że nie możemy przekonwertować liczby zmiennoprzecinkowej ciągu na liczbę całkowitą, w związku z czym pojawia się błąd wartości.
Python3
string> => '55.567'> > Float> => float> (> int> (string))> > print> (> type> (> Float> ))> > print> (> 'Float Value ='> ,> Float> )> |
Wyjście:
ValueError Traceback (most recent call last) in () 1 string = '55.567' 2 ---->3 Float = float(int(string)) 4 5 print(type(Float)) ValueError: nieprawidłowy literał dla int() o podstawie 10: '55.567'
Konwertuj ciąg na zmiennoprzecinkowy z określonymi punktami dziesiętnymi
Aby przekonwertować ciąg na liczbę zmiennoprzecinkową z określoną liczbą miejsc dziesiętnych, możesz użyć funkcji float () w Pythonie wraz z formatowaniem ciągu.
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)> |
Wyjście:
55.57
Konwertuj ciąg na zmiennoprzecinkowy za pomocą Numpy
W Numpy mamy „numpy.float64”, który jest wbudowaną metodą w module Numpy, która konwertuje wartość ciągu na wartość zmiennoprzecinkową.
Oto przykład.
Python3
import> numpy as np> > my_str> => '55.567'> float_number> => np.float64(my_str)> print> (float_number)> print> (> type> (float_number))> |
Wyjście:
55.567
Często zadawane pytania dotyczące konwersacji typu float i string
P: Dlaczego trzeba konwertować liczbę zmiennoprzecinkową na ciąg znaków?
Odpowiedź: Czasami musimy przekonwertować wartość zmiennoprzecinkową na wartość łańcuchową, ponieważ chcemy użyć metody, która jest dostępna w Pythonie tylko dla typu łańcuchowego, np. łączenie ciągów .
P: Dlaczego musimy przekonwertować ciąg na liczbę zmiennoprzecinkową?
Odpowiedź: Zgodnie z wymaganiami, jeśli chcemy użyć metody dostępnej dla typu danych float, wówczas przekonwertujemy ciąg na wartość zmiennoprzecinkową, np. Dodatek.