如何让Python交互式模式启动时自动加载指定脚本?
如何让Python交互式模式启动时自动加载指定脚本?
当然可以实现!就像PowerShell里的$Profile那样,Python也有专门的机制来让脚本在交互模式启动时自动加载,下面给你分享两种实用的方法:
方法一:使用PYTHONSTARTUP环境变量(永久生效)
这是我最推荐的永久方案,设置一次之后,每次打开Python交互模式都会自动加载你的脚本:
- 先把你的
autorun.py脚本存到一个固定位置,比如Windows下可以放在C:\Users\你的用户名\autorun.py,Linux或macOS的话可以放在用户主目录下,命名为.autorun.py(前面的点是隐藏文件,不影响使用) - 设置环境变量:
- Windows系统:
右键「此电脑」→「属性」→「高级系统设置」→「环境变量」,在「用户变量」里点击「新建」,变量名填PYTHONSTARTUP,变量值填你刚才存的脚本完整路径,比如C:\Users\张三\autorun.py,确定保存就好。要是只是临时测试,也可以打开命令提示符,输入set PYTHONSTARTUP=C:\Users\张三\autorun.py,这个只对当前命令行会话有效。 - Linux/macOS系统:
打开终端,编辑你的shell配置文件,比如用bash就编辑~/.bashrc,zsh就编辑~/.zshrc,在文件末尾加一行:
保存后执行export PYTHONSTARTUP=~/.autorun.pysource ~/.bashrc(或source ~/.zshrc)让配置立刻生效。
- Windows系统:
- 验证一下:打开Python交互模式,直接输入
cls()或者pause(),要是能正常执行清屏或暂停操作,就说明脚本已经自动加载成功啦!
方法二:启动时用-i参数(临时生效)
如果只是偶尔需要加载这个脚本,不想改环境变量的话,可以用-i参数启动Python:
python -i autorun.py
这样启动后,Python会先执行autorun.py里的代码,然后进入交互模式,同样能直接用里面的函数。不过这个方法每次启动都要手动加参数,适合临时场景用。
另外提一句,你的autorun.py里的cls()函数在Windows下用CLS没问题,要是在Linux/macOS上用的话,把"CLS"改成"clear"就能正常清屏啦。
备注:内容来源于stack exchange,提问作者Mr.Key7
相关产品推荐
相关产品推荐

