Mac系统下, VS Code 中Python虚拟环境配置

创建虚拟环境

复制代码
python3 -m venv venv

激活虚拟环境(Mac)

bash 复制代码
source venv/bin/activate

系统环境变量缺失问题

MacBook-Pro:hello hl$ python3 -m venv venv

bash: sed: command not found

bash: python3: command not found

VS Code的终端类型 ​(如bashzsh)可能会影响某些命令的执行,尤其是在macOS系统中。 ​VS Code的终端类型 ​(如bashzsh)可能会影响某些命令的执行,尤其是在macOS系统中。以下是具体原因和解决方案:


为什么bash终端会失败?​

  1. Python路径问题

    • macOS系统默认的bash可能没有正确加载你的PATH环境变量(尤其是通过Homebrew安装的Python路径未被包含)。
    • zsh(macOS Catalina及更高版本的默认Shell)会自动加载~/.zshrc~/.zprofile中的配置,而bash可能不会加载~/.bash_profile~/.bashrc
  2. 虚拟环境激活脚本兼容性

    • venv/bin/activate脚本可能依赖某些Shell特性(如数组操作),而旧版bash(macOS默认的bash是3.2版本)可能不支持。

解决方案

方法1:强制VS Code使用zsh终端

  1. 修改VS Code的默认终端

    • 打开VS Code,按快捷键:

      • macOS : Cmd + Shift + P
      • Windows/Linux : Ctrl + Shift + P
    • 输入 ​**Terminal: Select Default Profile**,选择zsh

  2. 直接修改VS Code配置

    settings.json中添加:

json 复制代码
  "terminal.integrated.profiles.osx": {
    "zsh": {
        "path": "/bin/zsh",
        "args": ["-l"]  // 强制登录Shell,加载配置
    }
},
"terminal.integrated.defaultProfile.osx": "zsh"
相关推荐
多打代码17 分钟前
2025.09.05 用队列实现栈 & 有效的括号 & 删除字符串中的所有相邻重复项
python·算法
@CLoudbays_Martin1124 分钟前
为什么动态视频业务内容不可以被CDN静态缓存?
java·运维·服务器·javascript·网络·python·php
程序猿炎义1 小时前
【NVIDIA AIQ】自定义函数实践
人工智能·python·学习
THMAIL1 小时前
深度学习从入门到精通 - BERT与预训练模型:NLP领域的核弹级技术详解
人工智能·python·深度学习·自然语言处理·性能优化·bert
nuclear20112 小时前
Python 实现 Markdown 与 Word 高保真互转(含批量转换)
python·word转markdown·markdown转word·word转md·md转word
山烛2 小时前
深度学习:CNN 模型训练中的学习率调整(基于 PyTorch)
人工智能·pytorch·python·深度学习·cnn·调整学习率
THMAIL2 小时前
深度学习从入门到精通 - 神经网络核心原理:从生物神经元到数学模型蜕变
人工智能·python·深度学习·神经网络·算法·机器学习·逻辑回归
dbdr09013 小时前
Linux 入门到精通,真的不用背命令!零基础小白靠「场景化学习法」,3 个月拿下运维 offer,第二十六天
linux·运维·服务器·网络·python·学习
花花无缺3 小时前
python自动化-pytest-用例发现规则和要求
后端·python