qiskit.utils.detach_prefix¶
- detach_prefix(value, decimal=None)[source]¶
Given a SI unit value, find the most suitable prefix to scale the value.
For example, the
value = 1.3e8
will be converted into a tuple of(130.0, "M")
, which represents a scaled value and auxiliary unit that may be used to display the value. In above example, that value might be displayed as130 MHz
(unit is arbitrary here).Example
>>> value, prefix = detach_prefix(1e4) >>> print(f"{value} {prefix}Hz") 10 kHz
- Parameters
value (
float
) – The number to find prefix.decimal (
Optional
[int
]) – Optional. An arbitrary integer number to represent a precision of the value. If specified, it tries to round the mantissa and adjust the prefix to rounded value. For example, 999_999.91 will become 999.9999 k withdecimal=4
, while 1.0 M withdecimal=3
or less.
- Return type
Tuple
[float
,str
]- Returns
A tuple of scaled value and prefix.
Note
This may induce tiny value error due to internal representation of float object. See https://docs.python.org/3/tutorial/floatingpoint.html for details.
- Raises
ValueError – If the
value
is out of range.ValueError – If the
value
is not real number.