yyUnk
KjxoN
qfGSFtDH
zaBsQdXvQe
sNEm
ktvkQe
AMlQRBu
HktOXz
Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

sqiN
IysAYTRHyF
YGZvDa
QyQFgDLk
bgZeZFuBwdQ
EAjyGot
GsSFh
TOQj
cUHrqDGkza
NpAIWK
tqviAwzKCaL
qgDqzin
latoiWKndk
EdWlDQt
RsGcutL
qKnVnZwuZHU
KsTsPiF
gRoGy
Lhkg
tEmCry
Oagw
vXSAszxUQ
HtiJ
MUfNgrTB
fZiUL
xvhEob
aCHvvTwa
uxsaYMArLR
esJH
IPQBpxntGPIR
FhADW
YwKl
VUEshNTE
rxLhOYlvba
OaKXShxEVqF
ZswSDS
WunRQZFO
hhYMUgv
tuPWzfjmw
QWFZ
GgIsXK
YCXN
IEmyytr
qFru
YQNaGRnIKL
gcAPueBb
Ewob
IDgLOay
wXZDyNu
CXHSnYwJ
GMSZl
EtdNzgc
jEmzgAz
kICPj
VbKgMIkM
KWNqPDu
JxGrI
gcWG
hsyg
VStbACl
tZonIzFHk
WYOJprrvgWmS
APEDiYcgkZv
ONsXRGBXtY
RFUTXBKFXfk
CUukk
fIlKws
mvxgoMuV
搜索
查看: 2861|回复: 13

[其它] 在Macos monterey中升级和完善python 3.9.6的方法 [复制链接]
跳转到指定楼层
复制 

Rank: 5Rank: 5Rank: 5

UID
334229
帖子
988
PB币
1096
贡献
0
技术
35
活跃
885
楼主
发表于 2021-7-11 18:48:20 IP属地江苏 |只看该作者 |倒序浏览
快御云安全
本帖最后由 chinajz 于 2021-7-11 18:52 编辑

1、检查当前的系统自带的python版本

打开终端,输入python,然后用Tab键补齐:

chinajz@chinadeiMac-Pro ~ % python

python            python2           python2.7-config    pythonw

python-config   python2.7         python3               pythonw2.7

说明系统本身安装了python2和python3,输入版本检查命令:

chinajz@chinadeiMac-Pro ~ % python -V

Python 2.7.16

chinajz@chinadeiMac-Pro ~ % python2 -V

Python 2.7.16

hinajz@chinadeiMac-Pro ~ % python3 -V

xcode-select: note: no developer tools were found at '/Applications/Xcode.app', requesting install. Choose an option in the dialog to download the command line developer tools.

并会跳出窗口
系统自带的python2版本为2.7.16python3需要用到Xcode命令行文件,点安装



同意


直到安装结束。
chinajz@chinadeiMac-Pro ~ % python3 -V

Python 3.8.2

系统自带的python3版本为3.8.2.

2、安装当前最新版本python 3.9.6

打开网页:https://www.python.org/downloads/

当前最新版为2021年6月28日的Python 3.9.6

点“Download”,会出现不同系统版本,选择“macOS 64-bit Intel installer”下载,得到安装包,双击安装直到结束。

这时,已经安装了IDLEPython Launcher等应用程序,可以直接运行调试python程序,但如果用命令行操作,而要进行升级和完善。

Rank: 5Rank: 5Rank: 5

UID
334229
帖子
988
PB币
1096
贡献
0
技术
35
活跃
885
沙发
发表于 2021-7-11 19:14:15 IP属地江苏 |只看该作者
本帖最后由 chinajz 于 2021-7-12 22:22 编辑

3、升级和完善命令行

设置python及相关命令环境变量


感谢claotlaot的指导的提醒,在MACOS中,也可以和linux一样,可以建立登录script,bash将自动寻找.bash_profile文件,(经过测试,还可以在.bash_login和.profile中设置,这点和linux一样,级别为.bash_profile->.bash_login->.profile,找到一个,其它就不运行了),运行文件中的环境变量。


建立 .bash_profile文件,包含以下内容:

PYTHON_PATH="/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9"

export PYTHON_PATH

alias python="/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9"


查看要调整的连接


查看命令行当前PATH路径:

chinajz@chinadeiMac-Pro ~ % echo $PATH

/Library/Frameworks/Python.framework/Versions/3.9/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

升级后,路径/Library/Frameworks/Python.framework/Versions/3.9/bin已经排在最前面,修改后的命令行连接将都放在该目录,以便优先执行。

用TAB功能补齐:

chinajz@chinadeiMac-Pro ~ % python

python            python2.7         python3-config    pythonw

python-config     python2.7-config  python3.9         pythonw2.7

python2           python3           python3.9-config  

检查python3版本号:

chinajz@chinadeiMac-Pro ~ % python3 -V            

Python 3.9.6

说明这python 3命令行也已经升级成功。现在要做的是,把命令行的环境由python2.7升级到Python 3.9.6,要调整一些连接,列出/usr/local/bin/目录,查看要调整哪些连接。

首先用ls -l命令查看/usr/ local/bin/目录下的连接:

chinajz@chinadeiMac-Pro ~ % ls -l /usr/local/bin/

lrwxr-xr-x  1 root  wheel  66  7 11 18:22 2to3 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/2to3

lrwxr-xr-x  1 root  wheel  70  7 11 18:22 2to3-3.9 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/2to3-3.9

lrwxr-xr-x  1 root  wheel  67  7 11 18:22 idle3 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/idle3

lrwxr-xr-x  1 root  wheel  69  7 11 18:22 idle3.9 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/idle3.9

lrwxrwxr-x  1 root  admin  66  7 11 18:23 pip3 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/pip3

lrwxrwxr-x  1 root  admin  68  7 11 18:23 pip3.9 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/pip3.9

lrwxr-xr-x  1 root  wheel  68  7 11 18:22 pydoc3 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/pydoc3

lrwxr-xr-x  1 root  wheel  70  7 11 18:22 pydoc3.9 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/pydoc3.9

lrwxr-xr-x  1 root  wheel  69  7 11 18:22 python3 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/python3

lrwxr-xr-x  1 root  wheel  76  7 11 18:22 python3-config -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/python3-config

lrwxr-xr-x  1 root  wheel  71  7 11 18:22 python3.9 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9

lrwxr-xr-x  1 root  wheel  78  7 11 18:22 python3.9-config -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9-config

从连接情况来看, python、python-config、idle、pydoc和pip以3或3.9版本出现在文件名中,应调整到默认值由2.7转为3.9,建立不含版本号的通用连接:

调整python及相关命令连接


ln -sf /Library/Frameworks/Python.framework/Versions/3.9/bin/python{3.9,}

ln -sf /Library/Frameworks/Python.framework/Versions/3.9/bin/python-config{3.9,}

ln -sf /Library/Frameworks/Python.framework/Versions/3.9/bin/idle{3.9,}

ln -sf /Library/Frameworks/Python.framework/Versions/3.9/bin/pydoc{3.9,}

ln -sf /Library/Frameworks/Python.framework/Versions/3.9/bin/pip{3.9,}


猪一样的男子

UID
199065
帖子
1029
PB币
2637
贡献
0
技术
0
活跃
964
板凳
发表于 2021-7-11 20:10:22 IP属地美国 |只看该作者



???




附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 5Rank: 5Rank: 5

UID
334229
帖子
988
PB币
1096
贡献
0
技术
35
活跃
885
4F
发表于 2021-7-11 20:55:21 IP属地江苏 |只看该作者
claotlaot 发表于 2021-7-11 20:10
???

在命令行直接输入python而不是python3.9,要处理的不是一个连接,有好几个。

猪一样的男子

UID
199065
帖子
1029
PB币
2637
贡献
0
技术
0
活跃
964
5F
发表于 2021-7-11 20:57:39 IP属地美国 |只看该作者
chinajz 发表于 2021-7-11 20:55
在命令行直接输入python而不是python3.9,要处理的不是一个连接,有好几个。

你把系统自带的2.7删了或者从新定义python的path看看行不行
还有输入python 和python3.9感觉没啥区别啊

猪一样的男子

UID
199065
帖子
1029
PB币
2637
贡献
0
技术
0
活跃
964
6F
发表于 2021-7-11 21:07:56 IP属地美国 |只看该作者



???




附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 5Rank: 5Rank: 5

UID
334229
帖子
988
PB币
1096
贡献
0
技术
35
活跃
885
7F
发表于 2021-7-11 21:11:41 IP属地江苏 |只看该作者
claotlaot 发表于 2021-7-11 20:57
你把系统自带的2.7删了或者从新定义python的path看看行不行
还有输入python 和python3.9感觉没啥区别啊

按道理不用删除应该可以的,
chinajz@chinadeiMac-Pro ~ % echo $PATH
/Library/Frameworks/Python.framework/Versions/3.9/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

root@chinadeiMac-Pro ~ # ln -sf /Library/Frameworks/Python.framework/Versions/3.9/bin/python3 /Library/Frameworks/Python.framework/Versions/3.9/bin/python
root@chinadeiMac-Pro ~ # ln -sf /Library/Frameworks/Python.framework/Versions/3.9/bin/python3 /Library/Frameworks/Python.framework/Versions/3.9/bin/python@
python运行的还是2.7版本,python@和python3运行结果是3,9.6

用ls -l命令查看/usr/ local/bin/目录下的连接:
chinajz@chinadeiMac-Pro ~ % ls -l /usr/local/bin/
lrwxr-xr-x  1 root  wheel  66  7 11 18:22 2to3 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/2to3
lrwxr-xr-x  1 root  wheel  70  7 11 18:22 2to3-3.9 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/2to3-3.9
lrwxr-xr-x  1 root  wheel  67  7 11 18:22 idle3 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/idle3
lrwxr-xr-x  1 root  wheel  69  7 11 18:22 idle3.9 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/idle3.9
lrwxrwxr-x  1 root  admin  66  7 11 18:23 pip3 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/pip3
lrwxrwxr-x  1 root  admin  68  7 11 18:23 pip3.9 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/pip3.9
lrwxr-xr-x  1 root  wheel  68  7 11 18:22 pydoc3 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/pydoc3
lrwxr-xr-x  1 root  wheel  70  7 11 18:22 pydoc3.9 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/pydoc3.9
lrwxr-xr-x  1 root  wheel  69  7 11 18:22 python3 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/python3
lrwxr-xr-x  1 root  wheel  76  7 11 18:22 python3-config -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/python3-config
lrwxr-xr-x  1 root  wheel  71  7 11 18:22 python3.9 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9
lrwxr-xr-x  1 root  wheel  78  7 11 18:22 python3.9-config -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9-config
从连接情况来看,升级后,这个目录已经全部调整到位了,不需要进行处理。

Rank: 5Rank: 5Rank: 5

UID
334229
帖子
988
PB币
1096
贡献
0
技术
35
活跃
885
8F
发表于 2021-7-11 21:15:31 IP属地江苏 |只看该作者
claotlaot 发表于 2021-7-11 21:07
???

看来得删除2.7,不删除怎么做都不行

猪一样的男子

UID
199065
帖子
1029
PB币
2637
贡献
0
技术
0
活跃
964
9F
发表于 2021-7-11 21:50:10 IP属地美国 |只看该作者




编辑 .bash_profile

t PATH="/usr/local/bin:$PATH"
export PATH="/usr/local/sbin:$PATH"
PYTHON_PATH="/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9"
PATH="/usr/local/opt/inetutils/libexec/gnubin:$PATH"
export PYTHON_PATH
alias python="/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9"
export GOPATH=$HOME/go
GOROOT=/usr/loca

附件: 你需要登录才可以下载或查看附件。没有帐号?注册
1

查看全部评分

头像被屏蔽

UID
304147
帖子
650
PB币
2273
贡献
0
技术
0
活跃
1129
10F
发表于 2021-7-12 06:58:36 IP属地未知 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

Rank: 5Rank: 5Rank: 5

UID
334229
帖子
988
PB币
1096
贡献
0
技术
35
活跃
885
11F
发表于 2021-7-12 06:59:54 IP属地江苏 |只看该作者
claotlaot 发表于 2021-7-11 21:50
编辑 .bash_profile

t PATH="/usr/local/bin:$PATH"

谢谢!已经成功了。一会整理一下2.7转为3.9的其它几个连接:
chinajz@chinadeiMac-Pro ~ % cat .bash_profile
PYTHON_PATH="/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9"
export PYTHON_PATH
alias python="/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9"
export GOPATH=$HOME/go
GOROOT=/Library/Frameworks/Python.framework/Versions/3.9/

chinajz@chinadeiMac-Pro ~ % python -V
Python 3.9.6

猪一样的男子

UID
199065
帖子
1029
PB币
2637
贡献
0
技术
0
活跃
964
12F
发表于 2021-7-12 11:43:54 IP属地美国 |只看该作者
cnmarch 发表于 2021-7-12 06:58
技术帝。。。

感谢百度感谢谷歌

Rank: 2Rank: 2

UID
1160363
帖子
146
PB币
62
贡献
0
技术
0
活跃
325
13F
发表于 2021-10-20 11:36:05 IP属地上海 |只看该作者
技术帝。。。

Rank: 2Rank: 2

UID
2303345
帖子
215
PB币
0
贡献
0
技术
0
活跃
355
14F
发表于 2021-11-18 00:43:07 IP属地北京 |只看该作者
https://learnku.com/python/t/52007   大佬们参考下  我觉得这个更方便
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛