pint
中,如何重新定义要拼写的微前缀μ-而不是u-?两者在定义单位时都是别名,但是当获得短符号(例如使用{:〜}格式规范)时,即使我尝试重新定义micro = 1e-6 =μ-,pint也会恢复为u-: In [155]: ureg.define("micro- = 1e-6 = µ-")WARNING 2016-01-06 15:19:07,017 unit._adder:563: Redefining 'micro' (<class 'pint.deFinitions.PrefixDeFinition'>)WARNING 2016-01-06 15:19:07,017 unit._adder:563: Redefining 'µ' (<class 'pint.deFinitions.PrefixDeFinition'>)
(请注意,这些警告显然是通过日志记录模块发出的,并且由于我的.pythonrc中的规则而显示,logging.basicConfig(format =(“%(levelname)-8s%(asctime)s%(module)s.% (funcname)s:%(lineno)s:%(message)s“),level = logging.DEBUG))
In [156]: x = 3 * ureg.micrometreIn [157]: ureg._get_symbol("micrometer")Out[157]: 'um'In [158]: "{:~}".format(x)Out[158]: '3 um'
如何重新定义注册表中的微观条目,使“{:〜}”.format(x)会给我3微米而不是3微米?
编辑
我正在使用最新git存储库中的pint:
In [161]: print(pint.__version__)0.7.dev0
编辑2
只有存在以前定义的使用u-前缀的数量时,才会出现这种情况:
In [3]: ureg = pint.UnitRegistry()In [4]: q = 12 * ureg.umIn [5]: ureg.define("micro- = 1e-6 = µ-")WARNING 2016-01-06 15:41:25,477 unit._adder:563: Redefining 'micro' (<class 'pint.deFinitions.PrefixDeFinition'>)WARNING 2016-01-06 15:41:25,477 unit._adder:563: Redefining 'µ' (<class 'pint.deFinitions.PrefixDeFinition'>)In [6]: x = 3 * ureg.micrometreIn [7]: "{:~}".format(x)Out[7]: '3 um'
但是(新会议):
In [7]: x = 3 * ureg.micrometreIn [8]: "{:~}".format(x)Out[8]: '3 µm'
所以我想在使用u-alias之前重新定义默认需求.
解决方法 您需要在使用之前重新定义μ-前缀(无疑更方便输入)u-前缀:In [2]: ureg = pint.UnitRegistry()In [3]: ureg.define("micro- = 1e-6 = µ-")In [4]: x = 3 * ureg.umIn [5]: print("{:~}".format(x))3 µm
但(其他会议):
In [3]: x = 3 * ureg.umIn [4]: ureg.define("micro- = 1e-6 = µ-")In [5]: print("{:~}".format(x))3 um总结
以上是内存溢出为你收集整理的python – 在品脱中,如何将微观符号重新定义为μ-,而不是u-?全部内容,希望文章能够帮你解决python – 在品脱中,如何将微观符号重新定义为μ-,而不是u-?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)