Skip to main content
 首页 » 编程设计

python之在 Python 中将字符串转换为 'unit' 对象

2025年05月04日17duanxz

<分区>

在这个问题中,“单位”指的是物理量中使用的“计量单位”。

我想安全地解析包含物理量(例如“23 公斤”)的不受信任的用户输入字符串。我想使用 Python 可用的包之一(如 Unum 或 Quantities),因为它们负责单位之间的转换,简化数学表达式中包含的单位,减少到基本单位,但除了使用 eval() 之外,我找不到将字符串转换为(上述包的)对象的方法,这似乎不安全。

例如,假设 kg 和 cm 绑定(bind)到 Unum 包对象并引用千克和厘米单位,我需要一个能够从字符串返回 Unum 包对象的函数,例如:

cast_to_unit("100 kg/cm")

或

"100 kg/cm".asUnit()

  1. 有没有办法从一个 提到包?如果没有,
  2. 有没有办法安全使用 评估()?如果没有,
  3. 是否还有其他包裹(即使不在 Python)有这样的功能吗?