一、
在 Linux 上安装 Python 时,通常选择最新的稳定版本或操作系统官方包管理器中提供的版本,可以避免大多数常见的编译问题。以下是一些建议:
1. 使用系统包管理器安装
如果不需要特定的 Python 版本,建议使用系统自带的包管理器安装 Python。系统包管理器提供的版本经过测试和适配,通常不会有兼容性问题。
在 CentOS/RHEL 上
CentOS 7 默认使用 Python 2.7,但你可以通过安装 python3
软件包来安装 Python 3.x。
sudo yum install python3
这样安装的 Python 版本通常经过系统测试,兼容性更好。
在 Ubuntu/Debian 上
Ubuntu 和 Debian 默认提供 Python 3.x,可以使用以下命令安装:
sudo apt-get update
sudo apt-get install python3
2. 安装 Python 官方二进制包
如果你需要特定版本的 Python,或者你的系统包管理器中没有你需要的版本,可以从 Python 官方网站下载预编译的二进制包进行安装。
步骤:
-
下载 Python 官方二进制包:
前往 Python 官方下载页面,选择适合你的系统的版本,下载相应的二进制包(.tar.xz
格式)。 -
解压并安装:
假设下载的文件为Python-3.x.x.tar.xz
。tar -xf Python-3.x.x.tar.xz cd Python-3.x.x ./configure make sudo make install
这种方法可以避免许多编译相关的问题。
3. 使用 pyenv
安装和管理 Python 版本
pyenv
是一个流行的 Python 版本管理工具,允许你在同一系统上安装和切换多个 Python 版本。
安装 pyenv
:
-
安装依赖项:
在 CentOS 上:
sudo yum install -y git gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel tk-devel libffi-devel xz-devel
在 Ubuntu 上:
sudo apt-get update sudo apt-get install -y git build-essential zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev libssl-dev libffi-dev
-
安装
pyenv
:curl https://pyenv.run | bash
然后按照提示将
pyenv
添加到~/.bashrc
或~/.bash_profile
中。 -
安装 Python 版本:
pyenv install 3.x.x pyenv global 3.x.x # 设置全局使用的 Python 版本
pyenv
会自动处理依赖关系和编译选项,避免许多常见的编译问题。
4. 选择已知稳定的版本
如果你必须编译 Python,建议选择已知稳定的版本,例如 Python 3.9.x 或 3.8.x 版本。Python 3.7 及更高版本在大多数现代 Linux 发行版上已经经过广泛的测试。
总结
- 使用系统包管理器:这是最简单且最稳定的方式,避免了手动编译的复杂性。
- 使用 Python 官方二进制包:如果你需要特定版本,可以使用官方提供的预编译二进制包。
- 使用
pyenv
:这是一种灵活的方式,可以轻松管理多个 Python 版本,避免大部分编译问题。 - 选择稳定的 Python 版本:通常选择 Python 3.7 或更高版本,编译过程较为顺利。
通过这些方法,你可以避免大部分与编译相关的问题,顺利安装并使用 Python。
二、
在 CentOS 7 上使用 sudo yum install python3
安装好 Python 3 后,您可以进行一些后续配置和验证,以确保 Python 3 安装正确并能够正常使用。以下是完成安装后的几个关键步骤:
1. 验证 Python 3 安装
首先,验证 Python 3 是否安装成功,并检查版本:
python3 --version
你应该看到类似以下的输出,表明 Python 3 已成功安装:
Python 3.x.x
2. 设置 Python 3 为默认版本(可选)
CentOS 7 默认的 python
命令可能仍然指向 Python 2.x。如果你希望将 python
命令指向 Python 3,可以创建一个符号链接:
sudo ln -s /usr/bin/python3 /usr/bin/python
注意:修改默认 Python 版本可能会影响系统工具和脚本,特别是在一些依赖 Python 2.x 的旧系统上。因此,除非你明确知道不会影响系统工具,否则不建议更改默认 Python 版本。
3. 安装 pip3
pip3
是 Python 3 的包管理器,通常与 Python 3 一起安装。如果没有安装,可以手动安装:
sudo yum install python3-pip
安装完成后,验证 pip3
是否可以正常使用:
pip3 --version
你应该看到 pip
的版本信息。
4. 创建和管理虚拟环境
在 Python 项目中使用虚拟环境是一个良好的实践,虚拟环境可以隔离项目的依赖项,避免与系统的全局 Python 环境发生冲突。
创建虚拟环境
使用 venv
模块创建一个虚拟环境:
python3 -m venv myenv
这将在当前目录下创建一个名为 myenv
的虚拟环境文件夹。
激活虚拟环境
进入项目目录后,激活虚拟环境:
source myenv/bin/activate
激活虚拟环境后,命令提示符通常会显示 (myenv)
,表示当前正在使用虚拟环境。
在虚拟环境中,你可以使用 pip
安装项目所需的 Python 包:
pip install package_name
退出虚拟环境
完成操作后,使用以下命令退出虚拟环境:
deactivate
5. 安装常用的 Python 包
根据你的需求,使用 pip3
安装常用的 Python 包。例如,安装 requests
包:
pip3 install requests
6. 运行 Python 脚本
你可以通过以下方式运行 Python 3 脚本:
python3 your_script.py
如果你将 Python 3 设置为默认版本,也可以直接使用 python your_script.py
运行脚本。
7. 更新 pip 和 Python 包(可选)
为了确保你使用的是最新版本的 pip
,你可以运行以下命令更新 pip
:
pip3 install --upgrade pip
同样,你可以使用 pip
来更新已安装的 Python 包。
总结
- 验证安装:确保 Python 3 已正确安装,并可以通过
python3
命令使用。 - 安装 pip3:确保安装了
pip3
以便于管理 Python 包。 - 创建虚拟环境:使用
venv
模块来管理项目的依赖项。 - 安装和管理 Python 包:使用
pip
安装所需的 Python 包,并保持其更新。
通过这些步骤,你就可以在 CentOS 7 上成功安装并使用 Python 3 进行开发了。
三、
在 CentOS 7 上使用 sudo yum install python3
命令安装 Python 3 后,Python 3 通常会被安装到以下几个关键位置:
1. Python 解释器
Python 3 的解释器通常安装在 /usr/bin/
目录中,具体路径为:
/usr/bin/python3
你可以通过以下命令验证 Python 3 解释器的位置:
which python3
这个命令应该输出 /usr/bin/python3
,表明 Python 3 的解释器在该路径下。
2. Python 包管理器 pip3
如果你安装了 python3-pip
,pip3
也会被安装到 /usr/bin/
目录中:
/usr/bin/pip3
你可以通过以下命令验证 pip3
的位置:
which pip3
这个命令应该输出 /usr/bin/pip3
,表明 pip3
在该路径下。
3. Python 标准库
Python 3 的标准库会安装在 /usr/lib64/python3.x/
目录下,x
是 Python 版本号。例如,如果安装的是 Python 3.6,标准库的位置可能是:
/usr/lib64/python3.6/
4. Python 站点包
Python 3 的第三方库(通过 pip
安装的包)通常位于以下目录:
/usr/local/lib/python3.x/site-packages/
或者:
/usr/lib/python3.x/site-packages/
你可以通过以下命令查看 Python 3 的 site-packages
目录:
python3 -m site
5. 配置文件和其他资源
一些与 Python 3 相关的配置文件和资源可能安装在 /etc/
或 /usr/share/
目录中。
如何检查 Python 3 的安装位置
-
检查 Python 解释器路径:
which python3
你应该看到类似于
/usr/bin/python3
的输出。 -
检查 Python 版本:
python3 --version
这将返回 Python 3 的版本号,例如
Python 3.6.8
。 -
检查 Python 标准库路径:
你可以通过以下 Python 命令检查标准库路径:
python3 -c "import sys; print(sys.path)"
这将输出一系列路径,包括标准库和
site-packages
的位置。
总结
- Python 解释器:通常位于
/usr/bin/python3
。 pip3
包管理器:通常位于/usr/bin/pip3
。- Python 标准库:通常位于
/usr/lib64/python3.x/
。 - 第三方库(site-packages):通常位于
/usr/local/lib/python3.x/site-packages/
或/usr/lib/python3.x/site-packages/
。
这些路径都是系统默认的安装位置,你可以通过上述命令进行验证。如果需要自定义安装路径,可以通过编译安装或使用工具如 pyenv
进行管理。
四、
要在有网络连接的系统上使用 sudo yum install python3
安装 Python 3,并将其部署到一个离线的 Linux 系统上,可以按照以下步骤进行操作:
1. 在有网络连接的系统上安装 Python 3
首先,在有网络连接的系统上使用 sudo yum install python3
命令安装 Python 3。
sudo yum install python3
2. 下载已安装的 Python 3 包及其依赖包
安装完成后,你需要下载所有已安装的 Python 3 包及其依赖包,以便在离线系统上进行安装。
2.1 使用 yumdownloader
下载已安装的包
首先,安装 yum-utils
,它包含 yumdownloader
工具:
sudo yum install yum-utils
然后,使用 yumdownloader
下载 python3
及其所有依赖包:
mkdir python3-packages
cd python3-packages
sudo yumdownloader --resolve python3
--resolve
选项会确保下载 python3
及其所有依赖包。这些包会保存到 python3-packages
目录中。
3. 将包传输到离线系统
将 python3-packages
目录中的所有 RPM 文件复制到 USB 驱动器或其他存储设备上,然后传输到离线系统。
cp -r python3-packages /path/to/usb/
在离线系统上,将这些包复制到某个目录,例如 /tmp/python3-packages
。
mkdir -p /tmp/python3-packages
cp -r /path/to/usb/python3-packages /tmp/
4. 在离线系统上安装 Python 3 及其依赖包
在离线系统上,使用 rpm
或 yum localinstall
命令安装所有的 RPM 包。
4.1 使用 yum localinstall
安装(推荐)
yum localinstall
会自动处理包之间的依赖关系,因此是推荐的方法:
cd /tmp/python3-packages
sudo yum localinstall *.rpm
4.2 使用 rpm
命令安装
如果 yum localinstall
由于某些原因无法使用,你也可以使用 rpm
命令手动安装:
cd /tmp/python3-packages
sudo rpm -Uvh *.rpm
5. 验证安装
安装完成后,验证 Python 3 是否正确安装:
python3 --version
你应该看到已安装的 Python 3 版本号,例如 Python 3.x.x
。
总结
- 在有网络连接的系统上安装 Python 3:使用
sudo yum install python3
安装 Python 3 及其依赖。 - 下载 Python 3 及依赖的 RPM 包:使用
yumdownloader --resolve
下载所有相关的 RPM 包。 - 将包传输到离线系统:将下载的 RPM 包通过 USB 驱动器或其他方式传输到离线系统。
- 在离线系统上安装 Python 3:使用
yum localinstall
或rpm
命令安装所有包。 - 验证安装:检查 Python 3 是否安装成功。
通过这些步骤,你可以在没有网络连接的 Linux 系统上成功安装 Python 3。