python - 如何在 Sympy 中转换单位前缀

标签 python sympy

我想知道如何将具有物理单位的 sympy 值转换为具有另一个前缀的相同单位。例如:

>>> import sympy.physics.units as u
>>> x = 0.001 * u.kilogram
0.001kg

应转换为克。到目前为止我所采取的方法非常臃肿并且给出了错误的结果。

>>> x / u.kilogram * u.gram
1.0^-6kg

应该是1g

最佳答案

如果您可以接受打印 1 而不是 1g,则可以只使用除法:

>>> x / u.g
1.0

否则,您最好切换到sympy.physicals.unitsystems

>>> from sympy.physics.unitsystems import Quantity
>>> from sympy.physics.unitsystems.systems import mks
>>> Quantity(0.001, mks['kg'])
0.001kg
>>> _.convert_to(mks['g'])
1g

关于python - 如何在 Sympy 中转换单位前缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42340642/

相关文章:

python - Redis 中的字典列表

python - 如何使用 psycopg2 查询 postgres-db View ?

python - SymPy 中多边形的线段和内部的交集

python - 使用solve 来表达变量时出现 Sympy TypeError

python - 当 Python yield 语句没有表达式时会发生什么?

python - Django : execute command collectstatic raise UnicodeDecodeError

python - 如何求解积分的极限?

python - 使用 MatplotLib Python 实现革命

python - 为什么 numpy 不会计算一个 5 元素列表而不是另一个的标准偏差?

python - HuggingFace BERT `inputs_embeds` 给出了意想不到的结果