#python #pint
#python #пинта
Вопрос:
Я очень новичок в python и python pint. Я просто хочу знать поддерживаемые единицы python pint. Также в чем смысл приведенного ниже представления:
{length: 1, time: -1}
Ссылка из единицы измерения пинты. Также как мне распечатать доступные единицы измерения пинт для энергии и температуры.
from pint import UnitRegistry
ureg = pint.UnitRegistry()
ureg.Unit
Ответ №1:
Ключи словаря — это измерения, а соответствующее значение — это мощность этого измерения. То есть {length: 1, time: -1}
это представление скорости, а примером единицы измерения, размерность которой представлена словарем, будет м / с. Для ускорения представление будет {length: 1, time: -2}
:
In [13]: ureg.Unit('m/s').dimensionality
Out[13]: <UnitsContainer({'[length]': 1, '[time]': -1})>
In [14]: ureg.Unit('m/s^2').dimensionality
Out[14]: <UnitsContainer({'[length]': 1, '[time]': -2})>
Чтобы получить доступные единицы измерения заданной размерности, используйте UnitRegistry.get_compatible_units
; например, для ваших двух примеров:
In [9]: ureg.get_compatible_units('[energy]')
Out[9]:
frozenset({<Unit('electron_volt')>,
<Unit('rydberg')>,
<Unit('hartree')>,
<Unit('erg')>,
<Unit('joule')>,
<Unit('foot_pound')>,
<Unit('calorie')>,
<Unit('fifteen_degree_calorie')>,
<Unit('international_calorie')>,
<Unit('atmosphere_liter')>,
<Unit('thermochemical_british_thermal_unit')>,
<Unit('international_british_thermal_unit')>,
<Unit('british_thermal_unit')>,
<Unit('watt_hour')>,
<Unit('US_therm')>,
<Unit('therm')>,
<Unit('ton_TNT')>,
<Unit('tonne_of_oil_equivalent')>,
<Unit('quadrillion_Btu')>})
In [10]: ureg.get_compatible_units('[temperature]')
Out[10]:
frozenset({<Unit('degree_Rankine')>,
<Unit('kelvin')>,
<Unit('degree_Fahrenheit')>,
<Unit('degree_Reaumur')>,
<Unit('degree_Celsius')>,
<Unit('atomic_unit_of_temperature')>,
<Unit('planck_temperature')>})