基本上我想在一个脚本中定义的全球Python函数一把确保每当我我 机器上运行一个python脚本,或者每当我开始一个Python终端它们加载
让我们来谈谈你的第二个选择。启动终端时,有多种方法可以加载功能和变量。我建议使用IPython而不是默认的Python终端。但是,要在不安装IPython的情况下执行此操作,请修改环境变量 PYTHONSTARTUP.您确实丧失了划分配置文件的能力。
安装IPython后,您需要初始化其配置文件。 要创建默认配置文件:
ipython profile create
为了解决共同的话题在其他的答案,全局变量和函数尤其如果他们隐含地定义一个坏主意。但是,您可以在启动ipython时定义和加载单独的配置文件。 要创建这样一个配置文件:
ipython profile create <name>
要加载<name>
简介:
ipython --profile=<name>
现在修改配置文件。运行以下命令查看它们的位置:
ipython locate profile
您应该找到ipython_config.py
。我建议读它,它有非常有用的评论。
但去的时候,你可以加载任意函数,并通过添加这些行到配置文件开始IPython的时候变量:
c.InteractiveShellApp.exec_lines = [ "def p(s): print s" ]
c.InteractiveShellApp.exec_files = [ "/path/of/script.py" ]
我引用the IPython docs和意见在ipython_config.py
:
96 # List of files to run at IPython startup.
97 # c.TerminalIPythonApp.exec_files = []
98
99 # lines of code to run at IPython startup.
100 # c.TerminalIPythonApp.exec_lines = []
请参阅['__init __。py'](http://stackoverflow.com/questions/448271/what-is-init-py-for)。 – e0k
为每个Python脚本运行不是受支持的行为('__init __。py'可用于确保某些代码是在运行包或其子代的情况下运行的),但为了自定义交互式解释器,请将'PYTHONSTARTUP'环境变量指向具有Python命令的文件,以便在交付给交互式解释器之前运行,例如'export PYTHONSTARTUP = $ HOME/.pythonrc'。 – ShadowRanger
请参阅https://docs.python.org/2/library/site.html –