【发布时间】:2016-03-31 00:22:54
【问题描述】:
每当 SymPy 将 float 输出回 Jupyter 笔记本时,它都会以它可以收集的最佳精度显示整数。作为一名工程师,我发现这很难与之合作,因为他们习惯于读取 10 的 3 倍数(纳米、微米、毫、千克、兆、千兆等)的数字。
我编写了一个自定义函数to_engg(),它接受一个数字并返回一个字符串,该字符串包含一个任意精度的数字,最后加上工程前缀。
如何截取 SymPy 输出并首先通过我的 to_engg() 函数对其进行处理?
SymPy:好的,现在我要吐出这个丑陋的浮标
65722045.8015267
我:不要那么快。首先通过to_engg()。
SymPy:ptui!
这里发生了一些奇迹
Jupyter:在这里去。65.7 M
我能想到的最通用的方法是通过装饰器,这样我就可以使用除 to_engg() 之外的任何其他函数。
【问题讨论】:
标签: python sympy jupyter python-decorators