Python 版本确认方法

一、确认当前激活环境的 Python 版本(核心推荐)

适用于验证 Anaconda 虚拟环境(如 env1)的 Python 版本,确保运行代码时使用指定版本(如 3.8.20)。

操作步骤(系统默认 CMD 终端)

1、若 CMD 未识别conda命令,

复制代码
'conda' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

先初始化(仅需执行 1 次):

复制代码
# 替换为你的Anaconda安装路径(如D:\appc\Anaconda3)
D:\appc\Anaconda3\Scripts\conda.exe init cmd.exe

执行后会提示==> For changes to take effect, close and re-open your current shell. <==,需关闭所有 CMD 终端,重新打开使配置生效。

2、激活目标环境并查询版本:

复制代码
# 1. 激活env1环境(关键,确保查的是3.8版本)
conda activate env1

# 2. 执行版本查询命令(3种方式任选)
python --version  # 简洁版,输出如:Python 3.8.20
python -V         # 同上,简写形式
python -VV        # 详细版,含编译信息(如:Python 3.8.20 (default, Sep  6 2024, 18:57:00) [MSC v.1929 64 bit (AMD64)])

关键说明

  • conda init cmd.exe本质:修改 CMD 启动配置文件,终端每次启动时自动将 Anaconda 路径加入临时 PATH,仅影响当前终端,不污染系统全局环境;
  • 手动修改系统环境变量(将 Anaconda 的 Scripts 路径加入 PATH)可实现 "全局识别 conda 命令",但可能导致 Python 版本混乱,非必要不推荐;
  • 若已手动改环境变量,无需执行conda init;若已执行conda init,无需改环境变量,二者效果等价;
  • 若需 "全局识别 conda + 保留虚拟环境隔离":先手动将 Anaconda 的 Scripts 路径加入系统 PATH,再执行conda init cmd.exe。

二、确认系统所有 Python 版本

适用于排查系统中已安装的所有 Python 路径,区分 "有效解释器" 和 "占位符"。

操作命令(Windows)

复制代码
# Windows
where python  # 列出所有python.exe的路径+版本关联
# Linux/Mac
which -a python  # 列出所有Python可执行文件路径

常见结果说明

  • 仅输出C:\Users\hou\AppData\Local\Microsoft\WindowsApps\python.exe:此路径是微软商店 Python 安装占位符,非真实解释器(执行会跳转应用商店);

  • 未显示 Anaconda 的 Python 路径:因 Anaconda 未加入系统 PATH,且未激活虚拟环境(where仅搜索 PATH 中的可执行文件);

  • 精准定位 Anaconda 的 Python(兜底方案):无需改 PATH,直接递归搜索指定目录:

    替换为你的Anaconda/env1路径

    where /r D:\appc\Anaconda3\envs\env1 python.exe

所以最好是自己知道自己的环境名称,使用第一种方法。

三、Anaconda 环境专属确认

适用于通过 Anaconda 工具直接查询环境信息,无需激活环境。

复制代码
# 1. 列出所有conda环境(含路径+激活状态)
conda info --envs
# 示例输出:
# base                     D:\appc\Anaconda3
# env1                     D:\appc\Anaconda3\envs\env1  # 目标环境

# 2. 查看env1的Python版本(Windows用findstr过滤)
conda list -n env1 | findstr python
# 示例输出:python                    3.8.20               h1aa4202_0

# Linux/Mac系统替换为:
# conda list -n env1 | grep python

四、MATLAB 中确认关联的 Python 版本

适用于验证 MATLAB 调用的 Python 版本是否为目标版本(如 env1 的 3.8.20)。

复制代码
% 方法1:基础版本
pyversion  % 直接输出关联的Python版本(如3.8)

% 方法2:详细信息(路径+版本)
py_info = pyversion;
disp('关联的Python路径:');
disp(py_info.Executable);  % 输出:E:\anaconda3\envs\env1\python.exe
disp('关联的Python版本:');
disp(py_info.Version);     % 输出:3.8.20

注意事项

  • MATLAB 中pyversion需在 "未加载 Python 解释器前" 执行,若提示 "Python 已加载,无法更改版本",需重启 MATLAB 后优先执行pyversion;
  • 确保 MATLAB 关联的 Python 路径指向 Anaconda/env1 的 python.exe,避免调用系统默认版本。
相关推荐
深圳老胡3 分钟前
STM32F4 OTA升级:单App与双App方案优缺点对比
笔记·stm32·单片机·代码规范
泡海椒6 分钟前
JQuick-Excel 实战:用 STYLE 配置单元格与区域样式
开发语言·python·excel
威联通网络存储12 分钟前
TS-h1283XU-RP 在医药批记录与检验场景的部署
网络·python
Patrick在香港21 分钟前
时间戳凭空早了 8 小时:datetime.utcnow() 弃用实测与漂移复盘
数据库·python·标准库·datetime·时区·弃用
东莞市云毅网络有限公司7 小时前
AI 引用句逐条回指原文:让回答可回溯的校验实现
python·数据清洗·rag·企业知识库·文档解析
Sarvartha8 小时前
final 关键字
java·开发语言
数字融合9 小时前
透明化视频三维矿山井下照明重建技术
人工智能·python·数码相机
yi0119 小时前
LeetCode 219:存在重复元素 II——哈希表记录“最近一次出现的位置”
数据结构·人工智能·笔记·python·算法·leetcode·哈希表
程序员Sunday9 小时前
JavaScript 事件循环面试题,宏任务与微任务怎么执行|Sunday面试指南
开发语言·javascript·面试·校招·事件循环·程序员sunday
志尊宝10 小时前
Vue3 零基础每日笔记(073):keep-alive 页面缓存实战——列表页返回不丢状态
vue.js·笔记·缓存·#vue #前端 #前端开发·#javascript·#vue.js