使用以前版本的常量#
默认情况下, astropy.units
在第一次导入时初始化以使用的当前版本 astropy.constants
. 要使单元正确初始化为以前版本的常量,必须在第一次导入之前设置常量版本 astropy.units
或 astropy.constants
.
这是通过以下方式完成的 ScienceState
顶级包中的类。在Python会话开始时设置以前的版本将允许一致的单位。
例子#
要将单位初始化为以前版本的常量:
>>> import astropy
>>> astropy.physical_constants.set('codata2010')
<ScienceState physical_constants: 'codata2010'>
>>> astropy.astronomical_constants.set('iau2012')
<ScienceState astronomical_constants: 'iau2012'>
>>> import astropy.units as u
>>> import astropy.constants as const
>>> (const.M_sun / u.M_sun).to(u.dimensionless_unscaled) - 1
<Quantity 0.>
>>> print(const.M_sun)
Name = Solar mass
Value = 1.9891e+30
Uncertainty = 5e+25
Unit = kg
Reference = Allen's Astrophysical Quantities 4th Ed.
如果 astropy.units
已导入,则为 RuntimeError
都被养大了。