请注意,我是从人类可读性的角度来看这一点的,而不是将正在使用的单位告知程序本身。
我目前正在从事一个与机械工程有密切联系的项目,多次出现的问题之一是我的代码不清楚给定数量的单位- 通常是一个常数,但是批评也可以扩展到一些变量 - 被衡量。
目前,我正在这样做:
length = 28
# ^^^ measured in mm ^^^
Run Code Online (Sandbox Code Playgroud)
但这感觉很hacky,有点难看。我可以这样做:
length = 28 # <<< measured in mm
Run Code Online (Sandbox Code Playgroud)
这看起来更好,但我在大学里被灌输内嵌评论是邪恶的,这是一种我无法摆脱的偏见。(虽然话虽如此,我在大学里只教过 C 和 Java,内联注释的陷阱更明显。Python 中可以接受内联注释吗?)
是否有一些有用的约定来规定如何以清晰优雅的方式指示数量单位?还是我独自一人?
在内联评论之上,这很好;
选项 1:变量名称
你可以设置一个变量名,但如果你稍后计算并更改它可能会出错 - 所以它更适合常量。
LENGTH_IN_METERS = 3
Run Code Online (Sandbox Code Playgroud)
选项2:pint
Pint 是一个不错的库,可让您跟上可变测量单位的步伐。
例如
import pint
ureg = pint.UnitRegistry()
3 * ureg.meter + 4 * ureg.cm
<Quantity(3.04, 'meter')>
Run Code Online (Sandbox Code Playgroud)
选项 3:python-measurement
在 Python 中轻松使用和操作单位感知的测量对象。
例如
将其他度量单位转换为公里:
from measurement.measures import Distance
distance = Distance(mi=10).km
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
59 次 |
| 最近记录: |