powershell脚本无法运行的主因是执行策略限制和anaconda初始化未到位:需先用get-executionpolicy确认策略,若为restricted则执行set-executionpolicy remotesigned -scope currentuser并重启终端;同时确保anaconda的安装根目录、scripts和library\bin三个路径均加入path顶部,并重启所有终端生效。

脚本无法运行,大概率不是脚本本身的问题,而是执行环境没配好——特别是 Windows 下 PowerShell 的执行策略和 Anaconda 的初始化没到位。
PowerShell 报 “禁止运行脚本” 错误
这是最常见也最容易卡住人的第一步。错误信息里一定包含 profile.ps1 和 UnauthorizedAccess,说明 PowerShell 拒绝加载 Anaconda 写入的初始化脚本。
- 先确认当前策略:
Get-ExecutionPolicy—— 如果返回Restricted,就必须改 - 只对当前用户放宽即可,不碰系统全局策略:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser - 输
y确认后,**必须重启 PowerShell(或 VS Code 终端)**,否则新策略不生效 - 别用管理员窗口跑
conda init powershell后就完事——普通用户会话看不到管理员改的配置,得在普通 PowerShell 里再跑一次conda init或手动 source profile
cmd 或 PowerShell 里 conda 命令找不到
这说明系统压根没把 conda 的可执行文件路径加进 PATH,或者加了但顺序不对。
- Anaconda 要求三个路径都加入
PATH:安装根目录(如C:\Users\xxx\anaconda3)、Scripts子目录、Library\bin子目录 - 只加
Scripts是不够的——比如conda activate依赖根目录下的python.exe,而某些包调用需要Library\bin里的 DLL - 加完后一定要「上移」到
Path列表顶部,避免被旧版 Python 或其他环境覆盖 - 改完环境变量后,所有已打开的终端(包括 VS Code)都得关掉重开,Windows 不会热更新
Python 脚本执行时报 No such file or directory
这个错误不是 Python 找不到解释器,而是你在错误的工作目录下运行了脚本,或者路径里有空格/中文没处理好。
- 用
cd进入脚本所在目录再运行,别依赖相对路径乱猜位置 - 如果路径含空格(比如
C:\My Documents\script.py),PowerShell 里要加引号:python "C:\My Documents\script.py" - 中文路径本身不致命,但某些老版本 conda 或第三方包可能解析异常——优先把项目挪到纯英文路径下测试
-
python --version能返回结果 ≠ 当前目录下python script.py就一定能跑通,这两件事是解耦的
真正麻烦的不是某一条命令失败,而是多个环节叠加失效:比如执行策略没开 → conda init 失败 → PATH 没自动写入 → 手动加又漏了 Library\bin → 某个包调用 DLL 失败 → 最终表现为脚本“突然不能跑了”。每一步都要单独验证,别跳步。











