首页 > 解决方案 > 向 Python 标准库添加函数?

问题描述

有没有办法将我创建的函数添加到本地机器上的 Python 标准库中?

我来自 matlab 世界,那里的东西并不是真正高效和快速,但我的指尖有很多功能,而无需导入它们的文件。我的问题是,如果我在 Python 中创建一个函数并想使用它,那么我还需要记住它所在的模块。我的记忆力很糟糕。我知道 Python 的结构是为了提高效率,但如果我只向标准库中添加少数几个我认为非常重要的函数,我猜对性能的影响实际上可以忽略不计。

标签: pythonfunction

解决方案


Python 有一个命名空间__builtins__,您可以在其中粘贴您想要随时可用的东西。你可能不应该,但你可以。小心不要破坏任何东西。Python 不会阻止您使用与内置函数相同的名称,如果您这样做,它可能会破坏很多东西。

# define function to always be available
def fart():
    print("poot!")

__builtins__.fart = fart

# make re module always available without import
import re
__builtins__.re = re

现在的问题是如何让 Python 在您每次启动解释器时为您运行该代码。答案是usercustomize.py按照这些说明找出计算机上正确目录的位置,然后usercustomize.py在该目录中放置一个名为的新文件,该文件定义了您想要在__builtins__.

还有一个环境变量 ,PYTHONSTARTUP您可以将其设置为在以交互模式启动解释器时(即命令提示符)运行 Python 脚本。在 REPL 中探索时,我可以看到例如让您最喜欢的模块可用的好处。更多细节在这里


推荐阅读