Linux上的Python版本

2024-05-18 19:13:48 发布

您现在位置:Python中文网/ 问答频道 /正文

昨天我重新安装了我的Linux Mint duo,类似于我现在面临的问题。 我安装Python3.6时使用了:

apt-get install build-essential checkinstall libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
cd /usr/src
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
tar xzf Python-3.6.0.tgz
cd Python-3.6.0
./configure
make altinstall
python3.6 -V

然后,在Linux上有Python2.7.12作为默认设置,我可以通过以下方式看到:

python -V
Python 2.7.12

当我检查时:

python3 -V

我的输出是:

Python 3.5.2

但是:

python3.6 -V
Python 3.6.0

我也下载并安装了Pycharm,但问题是,项目解释器找不到Python 3.6,我也无法以任何方式手动添加python3.6。

我注意到PyCharm中的其他Python版本路径如下:

/usr/bin/python2.7
/usr/bin/python3.5

但是我在里面找不到Python3.6。

还有一件事-当我检查时:

/usr/local/lib/python3.5/dist-packages

这是我能在那里找到的唯一一个文件夹,它是空的,但当我试图用pip做些什么时,它自动保存在那里。

但是:

/usr/local/lib/python3.6

不包含此类文件夹。我记得,它是安装所有模块的文件夹。

1)Python3.6安装是否正确,如果不正确,如何修复?

2)Python 3.5.2到底是如何安装在那里的,我应该删除它吗?

3)如何使PyCharm在Python 3.6上工作

4)Python3.5会导致模块安装问题,在重新安装Linux之前我也遇到过同样的问题。这里怎么了?


Tags: 模块dev文件夹binlinuxlibusrlocal
1条回答
网友
1楼 · 发布于 2024-05-18 19:13:48

命令的输出是什么: $update替代项--列出python3

在你的系统上?

它看起来像:

/usr/bin/Python3.5

/usr/bin/Python3.6

如果可以,可以使用命令:

$sudo update alternatives——配置python3

选择要运行的python3版本。不过,请注意,某些已安装的软件可能依赖于3.5版,更改默认python3可能会产生副作用。您应该能够将默认的python3.6更新为python3.6,然后安装所需的软件包,并在需要时切换回默认的3.5。

然而,您将不断地交换默认值,迟早您可能会忘记并陷入某种版本控制冲突。

根据您对python3.6的特定需求,您只能在需要时有选择地使用它。

下面是一些例子。。。

1)在命令行中工作时,使用“python3.6”而不是“python3”启动python会话,将使用3.6而不是3.5。

2)编写python可执行文件时,请使用shebang行“#”!/usr/bin/python3.6'而不是'#!/usr/bin/python3'以确保使用python3.6

3)在命令行运行python文件时,使用

'python3.6文件名.py'

或者

'python3.5文件名.py'

根据需要调用所需的特定版本的python。


这些都很麻烦,但相对安全。你只会在需要的时候使用3.6。

保持系统安全、支持多个版本的python、不破坏3.5版本的任何系统依赖性的最佳方法是了解虚拟环境。这些环境使用它们自己指定的python版本,以及它们环境的特定包。

虚拟环境一开始有点复杂,但一旦你掌握了它们的窍门,最好有几个独立的项目,每个项目都有稍微不同的依赖集,都在它们自己的足迹中,而不是相互踩着。

以下是一些教程:

http://docs.python-guide.org/en/latest/dev/virtualenvs/

https://realpython.com/python-virtual-environments-a-primer/

https://docs.python.org/3/tutorial/venv.html

youtube上也有很多教程。

祝你好运,编码愉快!

相关问题 更多 >

    热门问题