[英]Installed Python 3.7 and tried changing that to the default however, changing $PATH and running python --version still shows 2.7
抱歉,如果问题很简单,或者我遗漏了一些明显的问题,但是我对控制台命令和Python还是很陌生。
顾名思义,我安装了Homebrew,然后安装了最新版本的Python。 我想在bash中运行python --version
时将其设置为默认值。
我尝试更改bash_profile中的路径,并在底部添加以下行:
export PATH=/usr/local/bin:/usr/local/sbin:$PATH
看来,当我安装新模块时,它们适用于2.7而不是3。检查pip --version
直接进入默认值:
pip 18.0 from /usr/local/lib/python2.7/site-packages/pip (python 2.7)
我还尝试运行以下命令:
echo "export Path=/usr/local/bin:$PATH" >> ~/.bash_profile && source ~/.bash_profile
这确实会再次编辑我的bash_profile
,但是我想要的行(并手动添加)不是出现的那行; 而是插入以下内容(我不知道为什么在最后插入Applications / VMware,它与Python无关或我想做什么):
export PATH=/usr/local/bin:/usr/local/sbin:$PATHexport Path=/usr/local/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware
谁能向我解释如何将python3设置为默认值。 我不想摆脱2.7,因为许多Mac脚本仍然依赖它。 是否可以安装pipenv并从那里运行3.7,同时将2.7保留为默认值?
您只需要运行命令
$which python
然后转到路径将python重命名为python2然后运行命令
$which python3
要获取python3的路径,只需使用命令链接
sudo ln -s $python3path /usr/bin
/ python您需要使用实际路径来代替$ python3path然后可以使用python命令运行python3
您真的不想更改此设置。
第一:
是否可以安装pipenv并从那里运行3.7,同时将2.7保留为默认值?
是! 安装pipenv
,并设置默认值为3.7的环境,但将系统默认设置为2.7。
更普遍:
根据PEP 394 ,如果您未激活虚拟环境,则要到2020年才能重新评估:
python3
运行Python 3.x python2
运行Python 2.x python
但如果您确实使用python,则应运行python2.x。 通常,您还可以使用python3.7
和python2.7
来运行特定的3.x和2.x版本,尽管任何标准都没有涉及。
像pip
脚本以及由pip
安装的脚本,应使用类似的后缀安装,但是理想情况下,如果您有多个版本,则不应运行这些脚本。 它们中的大多数被设计为作为模块运行,因此您可以运行python3 -m pip
来运行3.x的pip
。
对于某些事情,设置快捷方式可能会很方便。 (例如,我通常不是使用命令行来运行python3 -m ipython
,而是通常使用一个使用iTerm概要文件而不是bash
作为启动命令。如果您既不使用IPython也不使用iTerm,则可以创建一个Terminal。运行python3
应用程序配置文件。)
作为平台的软件包管理器一部分安装的脚本是一个更为复杂的故事,但是macOS没有官方的软件包管理器,Homebrew通常希望您使用pip
而不是brew
安装Python库,因此您不必担心关于那个。
程序应具有安装程序(无论是通过pip
还是py2app
类的程序进行安装),都可以创建适当的shbang行,因此它们可以与安装的Python版本一起运行,因此您不必担心它们。 但是您的操作系统随附的程序可能会使用/usr/bin/env python
,并且他们希望它们能够运行您的操作系统随附的Python版本。
对于开发目的,通常要使用virtualenv
或pipenv
或conda
,使python
运行Python解释器无论哪个环境是当前激活。
因此,请勿尝试更改python
运行Apple的python 2.7的事实。 这就是应该执行的操作,否则,可能会破坏事情。 使用python3
, python3 -m pip
等; 在脚本上使用#!/usr/bin/env python3
(或者更好的是,使用setuptools
自动创建入口点脚本); 使用虚拟环境; 只是永远不要运行python
,一切都会正常工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.