2. float

2.1. Defining float

value = 10.5        # 10.5

2.1.1. Notation without leading or trailing zero

  • Used by numpy

value = 10.         # 10.0
value = .44         # 0.44

2.1.2. Engineering notation

million = 1e6       # 1000000.0
million = 1E6       # 1000000.0
million = +1E6      # 1000000.0
million = -1E6      # -1000000.0
float(+1E6)         # 1000000.0
float(-1E3)         # -1000.0
float(1e-4)         # 0.0001
float(1E-3)         # 0.001

float(1e-5)         # 1e-05
float(1E-5)         # 1E-05

2.1.3. Maximal and minimal float values

import sys

sys.float_info.min  # 2.2250738585072014e-308
sys.float_info.max  # 1.7976931348623157e+308

2.1.4. Infinity representation

1e308               # 1e+308
1e309               # inf
float('-inf')       # -inf
float('-Infinity')  # -inf
float('inf')        # inf
float('Infinity')   # inf

2.2. Converting to float

  • Also known as "type casting"

  • float() converts argument to float

float(10.5)         # 10.5
float(10)           # 10.0
float(1.23)         # 1.23
float(-1.23)        # -1.23
float('+1.23')      # 1.23
float('-1.23')      # -1.23

2.3. Numeric Functions

2.3.1. Rounding numbers

pi = 3.14159265359

round(pi)       # 3
round(pi, 2)    # 3.14
round(pi, 4)    # 3.1416

2.3.2. Absolute value

abs(1.5)        # 1.5
abs(-1.5)       # 1.5

2.3.3. Number to the n-th power

pow(2, -1)      # 0.5
pow(2.888, 3)   # 24.087491072
2 ** -1         # 0.5
2.888 ** 3      # 24.087491072

2.4. Assignments

2.4.1. Handling user input and type casting

  1. Użytkownik wprowadził odległość w metrach równą 1337

  2. Wyświetl wartość na ekranie w różnych jednostkach

  3. Do wyświetlania skorzystaj z kodu poniżej

  4. Dane przy wyświetlaniu muszą być przekonwertowane do typów podanych w komentarzu

  5. W miejsce ... podstaw wyliczone i przekonwertowane zmienne

print(f'Meters: {...}')                              # int
print(f'Kilometers: {...}')                          # int
print(f'Miles: {...}')                               # float
print(f'Nautical Miles: {...}')                      # float
print(f'm: {...}, km: {...}, mi: {...}, nm: {...}')  # int, int, float, float
The whys and wherefores
  • Definiowanie zmiennych

  • Nazewnictwo zmiennych

  • Korzystanie z print formatting

  • Konwersja typów

  • Operacje matematyczne na zmiennych

  • Oddzielenie logiki biznesowej od warstwy widoku

Hints
  • 1000 m = 1 km

  • 1608 m = 1 mila

  • 1852 m = 1 mila morska

  • Literka f'...' włącza tryb interpolacji:

    age = 30
    print(f'My age is: {age}')