快速数量

misu的Python项目详细描述


MISU

misu 是"misura"的缩写,意思是测量值(in 意大利语) misu 是一个用于进行计算的包 测量单位。

安装

在Windows上,提供了预编译的控制盘,因此您只需 这:

pip install misu

在linux上,您必须从源发行版(sdist)安装。这是 也在皮皮上,但你一定已经有了cython和numpy在你的 目标环境。这是因为它们需要构建 misu 。 因此,在Linux上需要这样的东西:

$ python3.7 -m venv venv
$ source venv/bin/activate
(venv) $ pip install Cython numpy
(venv) $ pip install misu

<lots of compiler output>

如果您有为Linux制作 manylinux 轮子的经验,我 我也很想得到你的帮助,为米苏制作它们!

演示

大多数情况下,您可能会与 misu 交互工作,并且 导入整个命名空间将非常方便:

frommisuimport*mass=100*kgprint(mass>>lb)

符号 kg misu 包中导入。我们重新定义 用于执行内联转换的移位运算符。上面的代码 产生:

220.46226218487757

已经定义了许多单位,很容易添加更多单位。在这里 我们将相同的数量换算成盎司:

print(mass>>oz)

输出:

3571.4285714285716

你在上面看到的东西本身是无用的。你真正需要的是 能够与所表示的数量进行一致的计算 使用不同但兼容的设备:

mass=10*kg+20*lbprint(mass)

输出:

19.07 kg

对于加减法, misu 将确保 可以使用单位。乘法和除法将产生新单位:

distance=100*metrestime=9.2*secondsspeed=distance/timeprint(speed)

输出:

pip install misu
0

和以前一样,用不同的 兼容尺寸单位:

pip install misu
1

输出:

pip install misu
2

简介

misu 是一个处理具有维度的物理量的包。 这意味着对所有被跟踪的单元进行计算 正确地。每小时可增加 千克 盎司 分钟 ,获得正确答案,并在中报告该答案, 比如,每周

MISU是出于个人需要而产生的。我个人用过这个密码 在一个(化学)工程环境中已经超过一年了 写作,2015年2月)。每个功能都是为响应 个人需要。

功能
  • 速度优化。米苏跑得很快!python中繁重的数学代码 与 MISU 一起使用时,速度仅降低5倍左右。这太多了。 比python的其他数量包更快。
  • 作为cython扩展模块编写。当 使用来自您自己的cython模块的 misu (a .pxd 提供 用于链接)。
  • 当尝试涉及不兼容单元的操作时,将 EINCompatibleUnits 引发异常,并给出明确的解释 关于哪些单元不一致的消息。
  • 用于强制维度的函数的修饰符
pip install misu
3
  • 一种操作程序,用于轻松地剥离单元组件以获得 普通数值
pip install misu
4
  • 在命名不同单位时有大量的冗余。这个 意味着 m 将 所有的工作。原因是根据我自己的经验 交互工作(例如在ipython笔记本中)可能非常 分散注意力错误地猜测某个特定单元的名称,以及 必须查一下。 英尺 英尺 英尺 所有工作, m3 表示m**3等。
  • 您可以为维度指定一个 报告单元,这意味着您 默认情况下,可以以"英尺"为单位报告所有长度。
  • 您可以为特定单元指定 报告格式

还有其他项目,为什么要进行MISU?

python有几个单元系统,但主要的动机是 用例是将misu写成cython模块,目前为止 python中最快的*管理单元。

* 除了"numericalunits",这是一种特殊情况

我还没检查过这句话对所有人都是正确的 他们还没有。

一般用法

对于速度临界代码,单元操作的应用仍然可以 太慢了。在这些情况下,第一次浇铸的数量是典型的 在数值中(比如双倍),执行速度临界值 计算(可能调用C库),然后重新转换 结果返回到一个数量,并从函数返回该数量。

pip install misu
5

这样,您仍然可以轻松地包装性能关键计算 具有强大的单元处理功能。

灵感

MISU的灵感来自 艾伦·埃利亚森的《frink》 frink 。它是 太好了,但我需要用ipython笔记本上的单元工作,而且 与所有其他python代码一起。

还有很多类似的项目。我一个都没用过 足以提供公平的比较:

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在Spring Boot 2.2.0中添加弹性搜索?   jakarta ee如何在没有java认证的情况下停止直接访问网页(自定义标记)   java Hibernate:使用executeUpdate()的批删除未清除一级缓存   java如何在Hibernate中插入外键定义为Long的实体?   带参数的java Mockito单元测试计算器方法   java如何从Rally Rest API读取集合属性   java如何对基于消息的处理执行集成测试?   带插入排序的java排序字符串数组标记,双链表   java为什么在基于注释的Spring app@Value默认值中解析为null?   java Apache Commons Http客户端注册特定于客户端的协议   如何使用java反转字符串中n个部分的n个字符   java Tomcat在本地主机上运行良好,但在部署时出现内部服务器错误   使用信号量的变量的java结果   Java编译/运行时类路径问题   java哪个提供商负责AES/CTR/NOP添加?   伪错误解码器中的java响应未获取Zalando问题自定义属性