树莓派Python环境配置:优化升级三部曲


文章目录

  • 树莓派Python环境配置:优化升级三部曲
  • 前言
  • 一、查看系统预装的python版本
  • 二、卸载python2并默认python3
  • 三、删除默认python3.7并升级到python3.9
  • 四、更换树莓派上的pip系统镜像源
  • 一键更换清华源(五星推荐)
  • 总结



前言

随着技术的不断进步,Python 2 已经在 2020 年 1 月 1 日后正式停止维护,这意味着它不再接收安全更新和错误修复。因此,对于任何新的或正在进行的项目,使用 Python 2 已经不再是一个明智的选择。然而,在某些情况下,尤其是在一些预装的系统中,如树莓派,Python 2 可能仍然作为默认版本存在。

树莓派作为一款流行的开源硬件平台,为嵌入式系统开发和物联网应用提供了强大的支持。然而,对于希望在树莓派上进行Python开发的用户来说,默认使用Python 2 可能会带来一些不便和潜在的安全风险。因此,将默认Python版本更改为Python 3,并配置高效的Python镜像源,成为了树莓派Python环境配置的重要任务。

在本文中,我们将指导你如何删除树莓派上的Python 2,确保默认使用Python 3,并配置Python镜像源,以加速Python包的下载速度。通过完成这些步骤,你将能够充分利用Python 3的强大功能和安全性,为你在树莓派上的项目开发提供最佳的环境支持。无论是初学者还是经验丰富的开发者,都可以从本文中获得实用的指导,帮助你轻松配置出一个高效、安全的树莓派Python开发环境。

一、查看系统预装的python版本

打开终端,并输入命令:

python --version
python3 --version

命令执行后,终端会输出系统默认Python的版本号。如果系统默认使用Python 3,那么输出的将是Python 3的版本号;如果系统默认使用Python 2,输出的则是Python 2的版本号。

python删除base环境 怎么删除python环境_树莓派


可以看到,我的这个预装的默认是python2.7.16和python3.7.3,并且默认使用的是python2版本的,很明显不符合开发的需求。(主要是麻烦)

二、卸载python2并默认python3

  1. 使用以下命令卸载
sudo apt-get remove --purge python2
  1. 自动清理 python2.7 的依赖
sudo apt autoremove
  1. 输入python验证是否卸载成功
python

python删除base环境 怎么删除python环境_python删除base环境_02


如上说明卸载成功!

  1. 删除python2.7软连接
sudo rm -f /usr/bin/python

如果提示 “rm: 无法删除’/usr/bin/python’: 没有那个文件或目录” ,跳过即可

  1. 更改软链接,默认使用python3
sudo ln -s /usr/bin/python3.7 /usr/bin/python
  1. 检查当前 python 版本
python -V

python删除base环境 怎么删除python环境_Python_03

在删除Python 2并确保Python 3作为默认版本后,如果你的系统预装的Python 3版本满足你的开发需求,那么没有必要继续后面的教程升级到Python 更高的版本。Python 3.7已经是一个稳定且功能丰富的版本,适用于大多数应用场景。只需要通过配置Python镜像源来加速Python包的下载速度。

然而,如果你希望确保你的Python环境是最新的,或者某些特定的库或工具需要Python 3.9或更高版本,那么你可以考虑升级Python。

三、删除默认python3.7并升级到python3.9

  1. 更新系统
sudo apt-get update  && sudo apt-get upgrade
  1. 卸载python3.7
sudo apt-get remove python
  1. 清理依赖关系并验证卸载
sudo apt-get autoremove
python --version

python删除base环境 怎么删除python环境_python_04

如果命令返回错误消息,表示找不到python3.7命令,那么说明Python 3.7已成功卸载。

  1. 安装依赖
    在安装Python之前,需要安装一些依赖包。这些依赖包通常包括构建工具和一些基本的库。
sudo apt install -y build-essential zlib1g-dev \
libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libsqlite3-dev \
libreadline-dev libffi-dev curl libbz2-dev sqlite3 bzip2 libbz2-dev
  1. 下载指定版本的python源码
    访问Python官方网站(http://www.python.org),找到“Downloads”部分,选择“Source code”并下载你需要的Python版本的源代码压缩包。例如,如果你需要Python 3.9.13,就下载对应的压缩包。
wget https://www.python.org/ftp/python/3.9.13/Python-3.9.13.tgz
  1. 解压源代码
    将下载的压缩包解压到你选择的目录。
tar xvf Python-3.9.13.tgz
  1. 编译并安装
    进入解压后的源代码目录,并使用以下命令配置、编译和安装Python:
cd Python-3.9.13  # 切换到目录
 #安装配置
./configure --enable-optimizations \
--prefix=/usr/bin/local/python3.9 \
--with-ensurepip=upgrade \
--enable-shared

make -j4 # 调用四核来编译,这一步很漫长,取决于你对树莓派性能
sudo make install # 安装

这个过程可能需要一些时间,取决于你的树莓派的性能。./configure脚本会检查你的系统并准备构建,make命令会编译源代码,而sudo make install会以root权限安装Python到系统目录。
扩展内容: 在编译和安装Python时,./configure 脚本支持许多不同的命令参数,这些参数允许你定制Python的构建和安装过程。以下是一些常用的命令参数:

基本选项:
--prefix=DIR:指定Python的安装目录。
--exec-prefix=DIR:如果安装目录与平台相关,则可以使用此选项。通常与 --prefix 一起使用。
编译选项:
--enable-optimizations:启用昂贵的、稳定的优化(例如PGO)。
--with-lto:尝试使用链接时优化(LTO)。
--disable-shared:不编译共享Python库。与 --enable-shared 相反。
--enable-shared:编译共享Python库。
功能选项:
--with-ensurepip=upgrade:确保pip是最新的,即使已经安装了旧版本。
--without-ensurepip:不安装pip。
--with-doc-strings:在Python中包括文档字符串。
--without-doc-strings:不包括文档字符串(可以节省空间)。
库和依赖项:
--with-openssl=DIR:指定OpenSSL的安装目录。
--with-system-expat:使用系统提供的expat库。
--with-system-ffi:使用系统提供的libffi库。
--with-dbmliborder=LIST:指定dbm库的搜索顺序。
调试和测试:
--with-pydebug:构建带有调试信息的Python。
--without-gcc:不使用GCC(需要其他C编译器)。
--with-valgrind:启用Valgrind支持(内存调试)。
其他选项:
--with-threads:启用线程支持(通常是默认启用的)。
--without-threads:禁用线程支持。
--with-computed-gotos:启用计算goto(某些平台/编译器上可能更快)。
--without-computed-gotos:禁用计算goto。
  1. 验证安装
    安装完成后,验证Python是否成功安装并使用了指定的版本。在终端中运行以下命令:
python3 --version

如果输出的版本号与你安装的版本一致,说明安装成功。

  1. 建立软连接
ls /usr/bin/python -l  # 查看当前软链接指向的python版本
sudo rm -f /usr/bin/python # 删除原来的软链接
which python3 # 查找python安装位置

python删除base环境 怎么删除python环境_python删除base环境_05

sudo ln -s /usr/local/bin/python3.9 /usr/bin/python # 建立新链接
sudo ln -s /usr/local/bin/python3.9 /usr/bin/python3 # 这个也很重要

python删除base环境 怎么删除python环境_树莓派_06

四、更换树莓派上的pip系统镜像源

一键更换清华源(五星推荐)

直接打开终端执行以下命令即可:

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple # 清华源

可选:

pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/ #阿里源

pip config set global.index-url http://mirrors.cloud.tencent.com/pypi/simple #腾讯源

pip config set global.index-url http://pypi.douban.com/simple/ #豆瓣源

此外更换树莓派上的pip系统源可以通过修改配置文件来实现。以下是具体的步骤:

1. 修改全局pip配置文件:(推荐)
打开终端,输入命令 sudo nano /etc/pip.conf
在打开的文件中,将原有内容注释掉(在行首添加#)。
添加新的内容,例如使用阿里云的pip源:extra-index-url=https://mirrors.aliyun.com/pypi/simple
ctrl + o 保存,然后按 Enter 确认,最后按 ctrl + x 退出。

2. 创建用户级别的pip配置文件(可选):
/home/pi/ 下创建目录 .pip,命令为 mkdir ~/.pip
进入该目录,命令为 cd ~/.pip
创建 pip.conf 文件,命令为 touch pip.conf
编辑该文件,命令为 sudo nano pip.conf
输入以下内容(以使用清华大学的pip源为例):[global] index-url=https://pypi.tuna.tsinghua.edu.cn/simple
同样按 ctrl + o 保存,然后按 Enter 确认,最后按 ctrl + x 退出。

更快的配置文件方式:

sudo nano ~/.pip/pip.conf
# 在打开的文件中,添加以下内容以设置清华大学的pip源:
[global] 
timeout = 6000 
index-url = https://pypi.tuna.tsinghua.edu.cn/simple 
trusted-host = pypi.tuna.tsinghua.edu.cn]
# 在nano编辑器中,你可以按Ctrl + O保存文件,然后按Enter确认文件名,最后按Ctrl + X退出编辑器。

完成上述步骤后,pip将会使用新的系统源来安装和更新Python包。请确保你选择的源是可靠和稳定的,以避免在包安装或更新过程中遇到问题。

此外,如果你只是想临时更换pip源而不是永久更换,你可以在每次使用pip安装或更新包时,通过命令行参数来指定源,例如:pip install package_name -i https://pypi.tuna.tsinghua.edu.cn/simple。这样,pip就会临时使用指定的源来安装或更新包。

3.换回默认源

运行以下代码即可换回默认的源。

pip config unset global.index-url

总结

通过以上步骤,你可以轻松地在树莓派上配置Python环境,删除原有的Python 2,使Python 3成为默认版本,并将Python 3.9升级到更新的版本。