Skip to main contentIBM Quantum Documentation
You are viewing the API reference for an old version of Qiskit SDK. Switch to latest version

qiskit.utils.detach_prefix

detach_prefix(value, decimal=None) GitHub(opens in a new tab)

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 as 130 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 with decimal=4, while 1.0 M with decimal=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(opens in a new tab) for details.

Raises

  • ValueError – If the value is out of range.
  • ValueError – If the value is not real number.
Was this page helpful?