File: builtin_float_round.py

package info (click to toggle)
micropython 1.25.0%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 48,944 kB
  • sloc: ansic: 317,850; python: 59,539; xml: 4,241; makefile: 3,530; sh: 1,421; javascript: 744; asm: 681; cpp: 45; exp: 11; pascal: 6
file content (34 lines) | stat: -rw-r--r-- 563 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# test round() with floats

# check basic cases
tests = [
    [0.0],
    [1.0],
    [0.1],
    [-0.1],
    [123.4],
    [123.6],
    [-123.4],
    [-123.6],
    [1.234567, 5],
    [1.23456, 1],
    [1.23456, 0],
    [1234.56, -2],
]
for t in tests:
    print(round(*t))

# check .5 cases
for i in range(11):
    print(round((i - 5) / 2))

# test second arg
for i in range(-1, 3):
    print(round(1.47, i))

# test inf and nan
for val in (float("inf"), float("nan")):
    try:
        round(val)
    except (ValueError, OverflowError) as e:
        print(type(e))