python-3.x - numpy 是如何添加 @ 运算符的?

标签 python-3.x numpy

他们是怎么做到的?我还可以将自己的新运算符添加到 Python 3 中吗?我在谷歌上搜索过,但没有找到任何相关信息。

最佳答案

不,您不能添加自己的。 numpy 团队与核心 Python 团队合作,将 @ 添加到核心语言中,它在核心 Python 文档中(例如,在运算符优先级表中),尽管核心 Python 没有 将它用于标准 CPython 发行版中的任何内容。核心发行版仍然识别运算符符号,并为其生成适当的 BINARY_MATRIX_MULTIPLY 操作码:

>>> import dis
>>> def f(a, b):
...     return a @ b
>>> dis.dis(f)
  2           0 LOAD_FAST                0 (a)
              2 LOAD_FAST                1 (b)
              4 BINARY_MATRIX_MULTIPLY
              6 RETURN_VALUE

关于python-3.x - numpy 是如何添加 @ 运算符的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73366730/

相关文章:

python-3.x - Networkx:使用端口连接节点

Python3按钮无法删除

python - python 3中的thread.start_new_thread发生了什么

python - 为什么 numpy random.choice() 函数被停用了?

python - 寻找方程的自洽解

python - ML - 特征选择后获取特征名称 - SelectPercentile,python

python - 在python中仅打印0到9之间的字符串长度

python - 行 Pandas 具有非空值的第一列名称

python - 如何将字符串数组转换为numpy中的 float 组?

python - Python 中的广义 __eq__() 方法