我想也许(如果这并不意味着任何不便)我可以修改Python的内置代码,这样我就可以添加我的自定义函数,模块,类,所以我不必导入我编码时的任何事情。考虑建立我自己的版本。
我认为这有缺点,我想知道哪些。
答案 0 :(得分:2)
这与我在这里写的答案类似:
Where is the PYTHONPATH defined in the first place?
这不是一个好主意:你必须修改python的内置代码 和图书馆。我甚至不知道他们是否编译,但如果他们 即使你能够修改代码(我没有修改代码)也没有 知道这是否有可能以我们假设的简单方式)你会跑 麻烦:
- 你可能会搞砸python赢得的任何其他代码部分,而你却不知道为什么
- 您的应用程序不会与任何其他计算机兼容,因为您也必须修改该程序包。
- 即使你有一个脚本修改包(因此它是兼容的),或者即使你只是在一台独特的机器上运行它,你也可以 没有足够的系统权限这样做(在你的情况下,我想 你这么做,因为我认为你是机器的所有者,但你可能没有)
- 大多数Python实现都没有现场可用的原始源代码。它全部编译完毕。所以,你需要去 下载原始代码并自己编译,这是另一个 问题。
醇>我不是真的推荐它,但如果你还想尝试,我希望 有人可能比我更好地回答你的问题。
我现在添加
也许如果您要添加到语言中的修改非常一致且频繁,您可以构建自己的Python版本,您可以在任何地方安装并与朋友分享。 正如@ user286474所指出的那样
听起来好像没有建立适当的Python环境..不要改变工具,改变环境。它更简单并且可以满足您的需求 - 修改Python核心的唯一理由是在核心级别扩展语言,例如添加新语法或修改VM的工作方式.-
我认为他是对的。不过,您可能仍希望修改Python的原始内容,将其替换为自定义内容。我真的不推荐它。但是,如果您认为合适,可以下载Python的原始代码并自行编译。这是一项艰巨但有趣的任务。
答案 1 :(得分:2)
我不认为避免导入模块的需要是构建自己的python版本的一个很好的理由。请注意,您可以编写一个模块" standard.py"含有:
import sys, math, os, ... # all the other modules you like to have handy
然后在你的代码中你可以添加一行
import * from standard
然后你可以使用例如
sys.argv
就像您在脚本中导入sys