在 Cent7 上用 Python3 简直太魔幻了

2017-08-06 11:37:17 +08:00
 icedx
首先是 Python3 的二进制文件名居然是 python3.6

然后安装依赖的时候用 pip3 install MySQLdb 后, 程序找不到这个包
经过一番调查发现是安装过程中使用了 python setup.py install 这个命令, 导致本该装在 Python3 的 MySQLdb 被装到了 Python2 的目录下

太魔幻了
4296 次点击
所在节点    分享发现
23 条回复
Trim21
2017-08-06 12:07:24 +08:00
是时候用 docker 了。。
oxoxoxox
2017-08-06 12:11:03 +08:00
关键字 pyenv
或者你手动指定 python 软连接
oxoxoxox
2017-08-06 12:17:11 +08:00
另外 这并不是 CentOS7 的锅 其他 linux 发行版也会有这样的问题
ywgx
2017-08-06 12:18:28 +08:00
pip3
playniuniu
2017-08-06 12:44:19 +08:00
你这明显是把 python3 和 python 2 混用起来的节奏啊 另外 python 3 上请用 pymysql 做驱动
showgood163
2017-08-06 12:46:33 +08:00
手动软连接比较合适,arch 上也是一样的
ik
2017-08-06 12:56:19 +08:00
cp python3.6 python

或者

ln -s ....../python3.6 ...../python
Kilerd
2017-08-06 13:06:13 +08:00
是时候来一波 pyenv 了
或者 docker
RqPS6rhmP3Nyn3Tm
2017-08-06 13:09:43 +08:00
Archlinux ARM 上任何东西都很魔幻
jy02201949
2017-08-06 13:13:24 +08:00
2、3 混用就是这样的啦
rrfeng
2017-08-06 13:16:01 +08:00
典型的搞不清楚原理就乱喷

7 系统默认 python 是 2.7,所以 3 肯定是你装的。装的不同方式会有不同调用形式,直接 rpm install 或者 make install 就会替换系统一些 python 组件啊软链之类的。

所以一般要装的话加 --prefix,全路径调用,不影响系统。程序用 pyenv
halfbloodrock
2017-08-06 13:29:59 +08:00
MySQLdb 不支持 python3....
hjc4869
2017-08-06 13:37:02 +08:00
二进制名称是 python3.6,是自己编译的吧?
billlee
2017-08-06 16:23:18 +08:00
用 mysqlclient. mysql-python 根本就不支持 python3 吧
Tyanboot
2017-08-06 16:41:18 +08:00
mysql-python 就不支持 py3. 你能装到 py3 就不对了.

另外 centos7 上的 py3 也只是 3.4 而已, 3.6 是你自己编译的吧.

@ik 你这样会直接让 yum 挂掉的吧= =
ansheng
2017-08-06 17:05:21 +08:00
pyenv......
Osk
2017-08-06 17:38:39 +08:00
virtualenv 创建时使用 virtualenv -p python3.6 可将 python3 作为 python 命令的默认版本。
catror
2017-08-06 17:57:15 +08:00
不需要使用 Python2 的话,把软连接改掉就好了…其他 Linux 发行版一样
k9982874
2017-08-06 18:23:57 +08:00
python 不指定默认链接到 python2.7。我觉得这是楼主不熟悉系统的锅。
julyclyde
2017-08-06 20:37:34 +08:00
用了 2 的 pip 这问题,完全是你自己的问题啊
可执行文件叫做 python3.6 这个事,应该还会有个叫 python3 的吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/380776

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX