我正在尝试获取python数量包中预定义的所有单位的列表。像这样:
from quantities import units as u
myList = u.length.list(everything defined with UnitLength)
,结果将是:
myList = ['m','meter','metre,'mi','au',...]
我想对它们在包中定义的所有单元类型执行此操作。知道如何在不解析实际源代码的情况下做到这一点吗?
答案 0 :(得分:0)
这个有用的模块可以帮助您:https://pypi.python.org/pypi/units。
答案 1 :(得分:0)
from quantities import units
unit_symbols = [u.symbol for _, u in units.__dict__.items()
if isinstance(u, type(units.deg))]
检查文档,可能会导出此列表。
答案 2 :(得分:0)
我认为这可以满足您的需求:
for /f "tokens=1 " %%a in ('testapp.exe') do set DEVICE1=%%a
缺点是它不适用于其他单位类型,因为您需要知道每种类型的类型。
答案 3 :(得分:0)
Yakym,很棒的回应。 thegoodson,根据您是否需要缩写或非缩写版本,使用第一个(在Yakim的示例中转储为_)来获取非缩写列表。我想一个更完整的方法(获得两者)将是:
from quantities import units as u
unit_symbols = [foo.symbol for _, foo in u.__dict__.items() if isinstance(foo, type(u.m))]
unit_names = [bar for bar, foo in u.__dict__.items() if isinstance(foo, type(u.m))]