如何在PowerShell中任意路径运行Python脚本?
问题解决:在任意路径用Python执行指定目录的脚本
首先得澄清你踩的误区:你添加到$Env:Path的路径是给PowerShell系统用的,不是给Python解释器用的。Tab补全能生效是因为PowerShell会遍历Path里的目录找文件,但python myscript.py执行时,Python只会在当前工作目录里找这个脚本文件,根本不会去Path里搜,所以才会报错找不到。
Python确实没有专门用来搜索外部执行脚本的环境变量——PYTHONPATH正如你所说,只负责解释器内部导入模块时的路径搜索,和执行外部脚本完全没关系。
给你几个可行的解决方法:
- 直接执行脚本文件(无需python前缀):把
D:\aaa\bbb加到Path后,直接在PowerShell里输入myscript.py就能运行,因为系统会在Path里找到这个脚本文件,然后用关联的Python解释器打开它。 - 给脚本创建PowerShell别名:执行
New-Alias -Name myscript -Value "D:\aaa\bbb\myscript.py",之后直接输入myscript就能运行脚本,不用带路径也不用加python前缀。如果想让别名永久生效,把这条命令加到你的PowerShell配置文件($PROFILE)里。 - 用PowerShell定位脚本路径:如果一定要用
python xxx的格式,可以用python (Get-Command myscript.py).Source,这条命令会让PowerShell先找到脚本的完整路径,再传给Python执行。
内容的提问来源于stack exchange,提问作者Celdor
相关产品推荐
相关产品推荐

