1. 为什么你的Power Shell总报错?从“source”说起
很多从Linux或者Mac转战Windows开发的兄弟,估计都和我一样,在Power Shell里踩过这个坑:兴冲冲地创建了一个Python虚拟环境(venv),然后习惯性地敲下 source venv/bin/activate,结果屏幕上蹦出来一堆红字,告诉你 source 这个命令它不认识。那一刻的迷茫,我懂。这就像你习惯了用筷子,突然给你一副刀叉,还让你夹起一粒花生米,确实有点无从下手。
这个问题的根源,在于 Power Shell和传统的CMD,以及Linux的Bash,它们是完全不同的“壳”。source 是Bash系列Shell(包括Linux的bash、zsh,Mac的终端)里的一个内置命令,它的作用是在当前Shell会话中执行一个脚本文件,而不是新开一个子进程。这样,脚本里设置的环境变量(比如激活虚拟环境最重要的 PATH)就能直接影响到你当前的终端。但是,Power Shell的设计哲学和语法体系自成一体,它压根就没有 source 这个命令。在Power Shell里,要实现类似“在当前作用域运行脚本”的功能,对应的命令是 点操作符 . ,或者它的别名 Invoke-Item(不过我们基本不用这个全称)。
所以,当你把Linux那套直接搬过来,Power Shell自然会一脸懵:“source 是谁?我不认识啊!” 报错也就成了必然。理解这一点,是我们跨出第一步的关键。别再把Power Shell当成一个“加强版CMD”或者“长得像终端的黑框框”了,它是个功能强大、面向对象的现代化Shell,有自己的一套规则。适应它的规则,我们才能玩得转。接下来,我们就彻底抛开 source,看看在Power Shell的地盘上,激活venv的“正确姿势”到底是什么。
2. 一步一步来:创建与激活venv的完整流程
光说不练假把式,咱们直接上手操作一遍。我会把每一步都掰开了讲清楚,确保你跟着做一遍就能成功。
2.1 准备工作:确认你的Python和Power Shell
首先,你得确保Python已经正确安装在你的Windows系统上。打开Power Shell(可以在开始菜单搜索“PowerShell”打开,我建议直接用 Windows Terminal,它默认标签页就是Power Shell,而且更好看),输入:
python --version
或者
python3 --version
如果看到了像 Python 3.11.4 这样的版本信息,恭喜,第一步过关。如果提示“不是内部或外部命令”,那你需要先去Python官网下载安装包,记得在安装时务必勾选 “Add Python to PATH” 这个选项,这是很多新手容易忽略导致后续一堆问题的关键一步。
另外,检查一下你的Power Shell版本,因为有些老版本可能对脚本执行有限制。输入:
$PSVersionTable.PSVersion
确保你的主版本号至少是5(Win10及以上通常自带5.1)。我们接下来会用到。
2.2 创建你的第一个虚拟环境
假设我们要为一个叫 my_project 的项目创建虚拟环境。首先,用 cd 命令进入你的项目目录,或者直接在你想

809

被折叠的 条评论
为什么被折叠?



