macOS下TorchX运行Python应用报找不到python错误的原因咨询
报错触发原因
- 核心根因:macOS 12.x版本默认不会在系统PATH中提供
python命名的可执行命令,自行安装Python3后默认仅生成python3、pip3命令别名。TorchX内置的utils.python组件默认调用名为python的解释器拉起脚本,系统检索不到对应可执行文件,直接抛出FileNotFoundError。 - 脚本存在冗余内容:你写入
my_app.py的%%writefile my_app.py是Jupyter Notebook专属的单元格魔法命令,仅在Jupyter环境下生效,本地编写独立Python脚本时不需要保留这行。该问题不会触发本次报错(报错发生在解释器拉起阶段,还未加载脚本内容),但不删除的话后续会触发语法错误。
修复方案
- 先修正脚本内容,执行
vi my_app.py删掉开头的%%writefile my_app.py行,最终脚本内容如下:
# my_app.py import sys print(f"Hello, {sys.argv[1]}!")
- 选择以下任意一种方式解决解释器找不到的问题:
- 临时方案:启动命令中手动指定Python3解释器路径,修改后的启动命令为:
torchx run --scheduler local_cwd utils.python --python $(which python3) --script my_app.py "your name" - 永久方案:给系统添加
python命令软链接,映射到已安装的Python3,终端执行以下命令,输入系统密码验证后即可生效:
软链接创建完成后,原启动命令可直接正常运行。sudo ln -s $(which python3) /usr/local/bin/python
- 临时方案:启动命令中手动指定Python3解释器路径,修改后的启动命令为:
验证:修复完成后执行启动命令,终端输出
Hello, your name!即代表运行成功。
内容的提问来源于stack exchange,提问作者Resting Platypus
相关产品推荐
相关产品推荐

