Float w Pythonie: przewodnik krok po kroku

Opublikowany: 2021-08-31

Programiści stosują różne typy danych (łańcuchy, liczby całkowite, liczby zespolone, zmiennoprzecinkowe) do przechowywania wartości w zależności od tego, jak chcą manipulować wartością. Na przykład możesz chcieć uruchomić operację matematyczną, ale jeśli typem danych jest ciąg, spowoduje to błąd. Podobnie, jeśli użyjesz liczby dziesiętnej jako danych wejściowych, nie możesz użyć do tego liczb całkowitych.

Jako prymitywny element programowania, Python umożliwia programistom tworzenie obiektów zmiennoprzecinkowych. Wbudowana funkcja float() w Pythonie pozwala konwertować typy danych, takie jak liczby całkowite lub łańcuchy, na liczby zmiennoprzecinkowe.

W tym artykule zrozumiemy, jak działa float w Pythonie i poznamy różne metody float na przykładach. Przyjrzymy się również, w jaki sposób możemy użyć Pythona round float do włączenia dodatkowych parametrów podczas zaokrąglania i dowiemy się, jak generowany jest losowy float w Pythonie. Więc zacznijmy.

Spis treści

Co to jest Float w Pythonie?

Float w informatyce to typ danych oznaczający ułamek lub liczbę w formacie dziesiętnym. Pozwala programistom na większą precyzję w porównaniu z liczbami całkowitymi

W Pythonie używamy metody float() do zwracania typu danych float, gdy dane wejściowe są dowolną określoną wartością, ciągiem znaków lub liczbą

Składnia

float(wartość) // gdzie wartość jest ciągiem lub liczbą

Jest to opcjonalne, jeśli chcesz przekazać parametr, czy nie. Domyślna wartość float() to 0.0. Jeśli wbudowana metoda float() nie może zwrócić liczby zmiennoprzecinkowej z ciągu lub liczby, podniesie wartość ValueError. Zwróci również błąd, jeśli podana liczba całkowita wykracza poza zakres Pythona float().

Liczby zmiennoprzecinkowe odgrywają istotną rolę w programowaniu, zwłaszcza przy oznaczaniu walut. Są bardzo wydajne w dostarczaniu mocy obliczeniowej w bibliotekach graficznych, gdzie są szeroko stosowane. Ponieważ może tolerować błędy zaokrąglania wynikające z precyzji do siedmiu cyfr, float może pomóc w pisaniu bardziej precyzyjnego i przystępnego kodu.

Ucz się online kursów nauki o danych z najlepszych światowych uniwersytetów. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.

Jak działa Float w Pythonie? Przykłady metody Float()

Oto przegląd różnych funkcji, które możesz wykonać na pływaku:

1. Konwertuj liczbę całkowitą na liczbę zmiennoprzecinkową w Pythonie

Konwersja liczby całkowitej na liczbę zmiennoprzecinkową w Pythonie jest prosta. Oto przykład

float_no = float(15)

drukuj(liczba_nr)

Wyjście : 15,0.

2. Przekształć ciąg znaków w liczbę zmiennoprzecinkową w Pythonie

Ciąg znaków w Pythonie jest uważany za zbiór znaków. Aby przekonwertować ciąg na liczbę zmiennoprzecinkową za pomocą metody float(), ciąg musi być wyrażony w formacie liczbowym. Oto przykład:

float_str = float(„15”)

drukuj(float_str)

Wyjście : 15,0.

Jeśli dodasz do ciągu znaki dodatnie (+) lub ujemne (-), metoda przekonwertuje ciąg odpowiednio na dodatnią lub ujemną liczbę zmiennoprzecinkową

czy chcesz, aby twój ciąg został przekonwertowany na dodatnią liczbę zmiennoprzecinkową, czy ujemną liczbę zmiennoprzecinkową. Na przykład:

float_str = float(„-15”)

drukuj(float_str)

Wyjście : -15,0

Float można również wyrazić w notacji naukowej, gdzie E lub e oznacza potęgę 10. Na przykład 1,5e3 = 1,5 x 10 3 = 1500).

Oto przykład:

drukuj(float(2e-002))

print(float("2e-002"))

print(float('+1E3'))

Wyjście:

0,02

0,02

1000,0

W ciągu można również umieścić nieprawidłowe liczby lub wartości nieskończoności: NaN, infinity lub inf.

Na przykład:

print("Prawda: ", float(Prawda))

print("Fałsz: ", float(Fałsz))

print("Nan: ", float('nan'))

print("Nieskończoność: ", float('inf'))

Wyjście

Prawda: 1,0

Fałsz: 0,0

Nan: nan

Nieskończoność: inf

3. Rzutowanie typów za pomocą Float()

Użyjemy teraz float(), aby dowiedzieć się, jak działa z łańcuchami i liczbami całkowitymi. W poniższym programie skonwertujemy typ z liczby całkowitej na zmiennoprzecinkową:

s=100

drukuj("s=", s)

print("Przed: ",typ(y))

s = pływak(y)

drukuj("s=", s)

print("Po: ",typ(y))

Wyjście :

s= 100

Przed: <klasa 'int'>

s= 100,0

Po: <klasa 'float'>

Jeśli dane wejściowe nie są liczbą całkowitą, a zamiast tego są ciągiem, nadal przekonwertuje je na liczbę zmiennoprzecinkową. Jeśli jednak ciąg zawiera znaki, spowoduje to wystąpienie ValueError.

4. Zaokrąglanie Float w Pythonie

Jeśli potrzebujesz przybliżonej wartości liczby zmiennoprzecinkowej, która nie jest zbyt dokładna, możesz zaokrąglić ją do wymaganego miejsca dziesiętnego. Na przykład zaokrąglenie liczby zmiennoprzecinkowej do 5,1235 zaokrąglonej do setnych miejsc to 5,12.

W Pythonie istnieje wbudowana funkcja Round(), która pomaga zaokrąglać liczbę zmiennoprzecinkową. Python round float zwraca liczbę zmiennoprzecinkową, która jest zaokrąglona zgodnie z wprowadzonymi danymi wejściowymi. W przypadku, gdy miejsce dziesiętne nie jest określone, Python przyjmuje je jako 0, a następnie zaokrągla je do najbliższej liczby całkowitej.

Składnia: round(liczba_liczba_liczba_liczba_dziesiętnych)

  • Dwa argumenty float_num i num_of_decimals wskazują odpowiednio liczbę zmiennoprzecinkową, którą chcesz zaokrąglić, oraz miejsce dziesiętne, do którego ma być zaokrąglona.
  • num_of_decimals jest opcjonalne, jak wspomnieliśmy powyżej.
  • Jeśli num_of_decimals jest ujemną liczbą całkowitą, funkcja round float w Pythonie zaokrągli ją do cyfry poprzedzającej przecinek dziesiętny.

Zrozummy to na przykładzie:

float_num1 = 11,7

float_num2 = 11,4

float_num3 = 11.2345

float_num4 = 11,5678

float_num5= 123,45

print(round(float_num1))

print(round(float_num2))

print(round(float_num3, 2))

print(round(float_num4, 2))

print(round(float_num5, -1))

Wyjście:

12

11

11.23

11,57

120,0

5. Generowanie losowej liczby zmiennoprzecinkowej Pythona

Możesz użyć metod random() i uniform() w Pythonie do generowania losowych liczb zmiennoprzecinkowych z określonego zakresu.

Załóżmy, że nasz zakres wynosi od 0 do 1 i chcemy wygenerować 3 losowe liczby zmiennoprzecinkowe:

importuj losowo

x = losowo.losowo()

dla i w zakresie(3):

print(losowy.losowy())

Biegać

Wyjście :

0,54134241344332134

0,1314255490547756

0.75132452526261544

Następnie użyjemy metody uniform() do określenia zakresu do generowania losowych liczb zmiennoprzecinkowych. Twój zakres może wynosić od 1 do 10 lub od 32,5 do 52,5 i tak dalej.

Składnia : random.uniform(start, stop)

  • Oba argumenty w funkcji uniform() są obowiązkowe. Pominięcie kogokolwiek doprowadziłoby do TypeError uniform().
  • start reprezentuje dolną granicę zakresu. Przyjmuje domyślnie wartość 0.
  • stop reprezentuje górną granicę lub ostatnią liczbę w zakresie.

Oto krótki program wyjaśniający generowanie losowych liczb zmiennoprzecinkowych w Pythonie:

importuj losowo

drukuj(losowy.uniform(10.5, 75.5))

print(losowy.uniform(10, 100))

Wyjście :

27.23469913175497

81.77036292015993

Oto kilka ważnych punktów do zapamiętania:

  • Jeśli start jest mniejszy lub równy stopowi, zostanie wygenerowana losowa liczba zmiennoprzecinkowa, która jest <= numer stopu i >= numer początkowy.
  • Jeśli stop jest większy lub równy startowi, losowa liczba zmiennoprzecinkowa Pythona będzie >= numer stopu i <= numer początkowy.

Zasadniczo oznacza to, że niezależnie od tego, czy określisz zakres jako 1 do 10 czy 10 do 1, funkcja random.uniform() potraktuje go tak samo.

Naucz się Pythona, aby rozwijać swoją karierę w nauce o danych

Python jest wysoce skalowalny i jednym z najszybszych języków przetwarzania w porównaniu do R, Matlab i Stata, a zatem odgrywa integralną rolę w nauce o danych. Oferuje elastyczność i wszechstronność w podejściu do danego problemu na wiele sposobów. Tak więc, jeśli chcesz rozpocząć karierę w nauce o danych, zdecydowanie zaleca się, aby zdobyć wiedzę w języku Python, poznając podstawowe i zaawansowane koncepcje języka programowania, które można zastosować w rzeczywistych scenariuszach. Oto jak:

Ciesz się ulepszonym doświadczeniem edukacyjnym!

Nasz program Executive PG w dziedzinie nauki o danych z IIIT Bangalore obejmuje 12 miesięcy i jest przeznaczony dla świeżo upieczonych i menedżerów średniego szczebla. Studenci uczą się wymaganych w branży umiejętności w zależności od programu nauczania wybranej przez siebie ścieżki specjalizacji: Data Science General, Deep Learning, Natural Language Processing, Business Intelligence/Data Analytics, Business Analytics i Data Engineering.

Jeszcze bardziej imponujące jest to, że baza płatnych uczniów upGrad, licząca 40 000 osób, jest rozproszona w ponad 85 krajach. Jego znaczenie w globalnym networkingu i nauce peer-to-peer jest niezaprzeczalne. W miarę interakcji z rówieśnikami z różnych środowisk, Twoja baza wiedzy nieuchronnie się powiększy! Kurs zapewnia dostęp do ponad 400 godzin treści edukacyjnych oraz ponad 20 zajęć na żywo i sesji eksperckich prowadzonych przez wiodących liderów wydziału i branży, którzy zapewniają również 360-stopniową pomoc w karierze.

Jaka jest różnica między double a float?

Float to 32 bity, a double to 64 bity. Ma większą mantysę i znacznie zmniejsza niedokładności precyzji.

Czy Python jest lepszy od R?

Oba języki programowania mają swoje unikalne zalety. Podczas gdy R jest doskonałą opcją do nauki statystycznej, Python lepiej nadaje się do sztucznej inteligencji i uczenia maszynowego oraz analizy danych. Pozwala na tworzenie aplikacji na dużą skalę.

Czy nauka o danych to dobra opcja kariery?

Nauka o danych jest uznawana za obiecującą rolę w pracy w Stanach Zjednoczonych i podobno odnotowała 56% wzrost liczby ofert pracy. Jest to również jedna z najlepiej płatnych prac. Średnia pensja analityka danych wynosi 120 092 USD rocznie.