windows上协调多版本python以及虚拟环境

一、背景

背景是我先前使用的是python 3.9并安装了许多的包,也有一些py脚本日常需要使用对应的环境,但是有时需要高版本的python,于是我安装了python 3.14。

但是实现迁移太麻烦了,且有两个版本的python一高一低,有时也有用,于是我决定让这两共存。

二、实现上使用Path环境变量

电脑中的用户的Path环境变量python配置如下

这里将旧python的放在上面,这样最先匹配到的就是python3.9,这样一些bat中的python 1.py等就可以不用修改即可继续在原环境下运行,导入原环境的包

这里不将python 3.9的Scripts目录加入到Path中而是使用新python虚拟环境中的Scripts目录,因为我想在任意终端使用pip都安装到新环境中,慢慢将使用的python重心放在新python上,旧python用于兼容旧脚本和以备不时之需

如果需要在终端中使用不同版本的python可使用如下命令进入python交互

其中'py'是Python的命令行启动器,它可以在Windows系统中同时存在多个Python版本时,方便地管理和调用各个版本的Python解释器。 在Windows 10及之后的版本中,'py'命令已经默认安装且可用。

实际上py可以指定版本(这些版本必须要在电脑上存在的)

三、pycharm虚拟环境

新建项目并选择项目venv环境

项目环境中使用包管理进行安包,这样好像不支持指定版本

于是使用python中的终端来安装包

使用where python 查看当前使用的python,可是没有输出

因为在 PowerShell 中,where 其实是 Where-Object 的别名,而不是 Windows CMD 下的 where.exe

正确查看需要用gcm python

或可使用Where.exe列出所有在环境变量路径中找到的 python.exe 文件路径

查看当前环境

查看匹配的python

通过结果可以看到
普通终端中比pycharm中少一个虚拟环境,普通终端中优先选中python3.9,pycharm中选中python3.14

可以使用pip list 查看当前环境下安装的包

相关推荐
一晌小贪欢1 小时前
告别 `datetime` 混乱:使用 Python 类型注解构建健壮的时间处理管道
开发语言·python·时间·时间类型·时间模块
嘛?2507011 小时前
Python高阶基础
python
li星野1 小时前
哈希表通关八题:从两数之和到LRU缓存,手撕高频面试题(Python + C++)
python·缓存·散列表
yaoxin5211231 小时前
401. Java 文件操作基础 - 使用 Buffered Stream I/O 写入文本文件
java·开发语言·python
MandalaO_O1 小时前
Java List 集合介绍
windows
不瘦80斤不改名1 小时前
HTML基础(一)
开发语言·前端·html
Shadow(⊙o⊙)2 小时前
初识Qt+经典方式实现hello world!的交互
开发语言·c++·后端·qt·学习
Byte Wizard2 小时前
C语言指针深入浅出3
c语言·开发语言
88号技师2 小时前
2026年4月一区SCI-狒狒优化算法Baboon optimization algorithm-附Matlab免费代码
开发语言·算法·数学建模·matlab·优化算法