服务器建立-错误:pyenv环境建立后python版本不对

文章目录

  • 前言
  • 一、20241223错误
    • [1. 镜像源成功配置或下载缓存生效](#1. 镜像源成功配置或下载缓存生效)
    • [2. .swp 文件和进程冲突清理后,环境恢复正常](#2. .swp 文件和进程冲突清理后,环境恢复正常)
    • [3. 环境变量正确生效](#3. 环境变量正确生效)
    • [4. pyenv 本地缓存生效](#4. pyenv 本地缓存生效)
    • [5. 误配置被修正](#5. 误配置被修正)
    • [6. 重新登录环境后状态被刷新](#6. 重新登录环境后状态被刷新)
    • [7. 虚拟环境的安装正常完成](#7. 虚拟环境的安装正常完成)
    • 结论
  • 总结

前言


一、20241223错误

从你的描述来看,现在 pyenv 能够正确工作,python --version 已经显示为 Python 3.6.9,说明之前的问题已经解决。以下是可能原因的分析:

1. 镜像源成功配置或下载缓存生效

你之前已经修改了 default_python_mirror 文件,将下载地址替换为国内镜像(https://npm.taobao.org/mirrors/python/)。这可能是问题解决的原因,pyenv 成功从国内镜像下载了 Python 源码。

此外,如果之前安装命令已部分完成(例如,源码文件已下载并存放在 ~/.pyenv/cache/),这会使后续的安装跳过下载步骤,直接进行编译和安装。

2. .swp 文件和进程冲突清理后,环境恢复正常

之前的 .swp 文件和 vim 编辑进程可能导致了冲突,干扰了 pyenv 的文件修改。当你删除 .swp 文件并清理了停止的 vim 进程后,python-build 插件开始正常工作。

3. 环境变量正确生效

在你重新设置 PYTHON_BUILD_MIRROR_URL 和其他路径变量后,环境配置得到了修复。环境变量在启动新终端或重新登录后可能没有正确加载,而现在它们已经被应用。

相关的命令可能包括:

cpp 复制代码
export PYTHON_BUILD_MIRROR_URL="https://npm.taobao.org/mirrors/python"

以及对 PATH 的清理和重新加载。

4. pyenv 本地缓存生效

pyenv 使用了 ~/.pyenv/cache/ 来存储已下载的 Python 源码文件。如果之前已经下载了 Python 3.6.9 的源码,即使下载时的镜像源配置存在问题,后续安装仍然可以使用缓存文件,因此安装成功。

5. 误配置被修正

之前可能存在以下问题:

$PATH 中 pyenv 的路径优先级较低,导致调用了系统默认的 Python。

pyenv 的 shims 未正确刷新。 通过清理 $PATH 和运行 pyenv rehash 后,这些问题得到了修正。

6. 重新登录环境后状态被刷新

在你重新登录服务器后,所有环境变量和配置重新加载。这可能修复了一些由于会话状态不一致导致的问题,例如:

pyenv 初始化未正确完成。

环境变量未加载。

7. 虚拟环境的安装正常完成

你在最后执行了以下命令:

cpp 复制代码
pyenv virtualenv 3.6.9 Python_3.6.9_MDAM_01
pyenv activate Python_3.6.9_MDAM_01
python --version

这些操作都正常工作,说明基础版本 Python 3.6.9 安装完成,并且虚拟环境绑定正确。

结论

经过多次调整后,问题得以解决。以下操作可能是关键:

  • 修改了 python-build 的镜像源。
  • 清理 .swp 文件和冲突的 vim 进程。
  • 重新配置或加载了环境变量。
  • 重新登录后环境状态刷新。
    建议
    确保你的配置文件(如 ~/.bashrc 或 ~/.zshrc)中有以下内容,以便下次环境加载正确:
cpp 复制代码
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv virtualenv-init -)"
export PYTHON_BUILD_MIRROR_URL="https://npm.taobao.org/mirrors/python"

运行以下命令检查 pyenv 是否配置正常:

cpp 复制代码
pyenv doctor

在安装新的 Python 版本时,继续使用国内镜像。


总结

相关推荐
BK贝壳13 小时前
亿级用户签到位图选型复盘:用 bool-hybrid-array 扛冷启动打卡,也把它和 Roaring/Redis 的边界测清楚了
数据结构·python·性能优化·numpy
2601_9669496514 小时前
如何根据研究的起止时间截取分钟级行情?Python 实战与 QuantDash 数据处理指南
开发语言·python·pandas·量化交易·1024程序员节·股票数据·quantdash
程序员清风17 小时前
数据处理脚本工程化:日志、配置、命令行与测试
服务器·开发语言·数据库
在世修行19 小时前
智学文枢:页面切换与跨页数据预填
python·桌面应用·signal·1024程序员节·pyside·跨页跳转·状态预填
2601_9628857219 小时前
如何用 Python 把 K 线重采样成任意周期?
开发语言·python
打工仔折腾 AI19 小时前
在 Ubuntu ARM64 部署 Q1 V3.0 MuJoCo 模型:加载、单步推理与执行器响应解析
linux·运维·人工智能·python·深度学习·ubuntu·性能优化
yyuuuzz19 小时前
跨境站点日志时区混乱的排查记录
运维·服务器·网络·云计算·aws·1024程序员节
‎ദ്ദിᵔ.˛.ᵔ₎19 小时前
关于Linux 线程局部存储的认识
linux·运维
GlobalInfo20 小时前
全球及中国风电叶片检测机器人行业研究报告(2026版):市场现状、行业前景与占有率分析
运维·网络·人工智能·机器人
信誓旦旦的程序猿20 小时前
【Python量化实战宝典 #21】北向资金跟随手册:聪明钱择时信号(Python 可跑)
python·1024程序员节·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口