scinum icon indicating copy to clipboard operation
scinum copied to clipboard

0.0 is not a float?

Open adavidzh opened this issue 10 months ago • 0 comments

I just tripped on the fact that

num = Number(0., (+2, 0.))
    print(num)
    print(num.str('publication'))
    # Same result for the next two
    #print(num.str('pdg'))
    #print(num.str('pdg+1'))

yields

0.0 +2.0-0.0
Traceback (most recent call last):
  File "/Users/adavid/workspace/Code_bits/RatioErrors/BinomialPoissionErrors.py", line 36, in <module>
    print(num.str('publication'))
          ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/adavid/workspace/Code_bits/RatioErrors/.venv/lib/python3.12/site-packages/scinum/__init__.py", line 747, in str
    nominal, uncs, _mag = round_value(nominal, uncs, method=format, **kwargs)  # type: ignore[arg-type, assignment] # noqa
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/adavid/workspace/Code_bits/RatioErrors/.venv/lib/python3.12/site-packages/scinum/__init__.py", line 2573, in round_value
    raise TypeError(f"uncertainties must be convertible to float: {_u}")
TypeError: uncertainties must be convertible to float: 0.0

I really do not understand why this is happening.

adavidzh avatar Apr 17 '24 18:04 adavidzh