在 AWS 中将 python3.5 设为默认值?

Posted

技术标签:

【中文标题】在 AWS 中将 python3.5 设为默认值?【英文标题】:make python3.5 as default in AWS? 【发布时间】:2017-07-20 16:20:08 【问题描述】:

有没有办法让python3.5成为AWS中的默认python。 每次我下次尝试连接时,python2.7 是默认版本,pip 6 是最后一个版本,因为我知道我在几分钟前确实更新了它。 这是我遵循的方法:amazon_link

这里是亚马逊告诉版本的另一个链接,实际上它们在 3.5 another_link

提前谢谢你,:) 最好的祝福

【问题讨论】:

【参考方案1】:

alternatives --set python /usr/bin/python3.5

如果你愿意,然后返回

alternatives --set python /usr/bin/python2.7

如果你想看看它当前指向什么

alternatives --display python

这是一个系统范围的设置,不仅适用于当前用户。系统设置存储在/etc/alternatives

【讨论】:

# alternatives -h alternatives version 1.3.49.3 - Copyright (C) 2001 Red Hat, Inc. This may be freely redistributed under the terms of the GNU Public License. # uname -a Linux hostname 4.14.109-80.92.amzn1.x86_64 #1 SMP Mon Apr 1 23:07:39 UTC 2019 x86_64x86_64 x86_64 GNU/Linux` ` yum whatprovides $(which alternatives) 加载的插件:优先级、更新-motd、升级-帮助程序chkconfig-1.3。 49.3-2.14.amzn1.x86_64 : 用于维护 /etc/rc*.d 层次结构的系统工具 Repo : amzn-main 匹配自: 文件名 : /usr/sbin/alternatives`【参考方案2】:

一个简单的安全方法是使用alias。将其放入~/.bashrc~/.bash_aliases 文件中:

别名 python=python3

Example
$ python --version
Python 2.7.6
$ python3 --version
Python 3.4.3
$ alias python=python3
$ python --version
Python 3.4.3

【讨论】:

是的,我做到了,但是当我断开连接然后重新连接时,python 默认为 2.7 和 pip 6 ;我给他们留下了 python 3.5 和 pip 9 我正在使用 EC2 免费的 linux ami,如果这可以改变一些东西的话! 这种方法会产生更多的混乱。因为pip会在python2.7下继续安装你的依赖。 那么你应该使用 pip3 而不是 pip 安装【参考方案3】:

默认情况下,awscli-bundle 安装脚本在 Python 的系统默认版本下运行。要回答您的问题,您需要知道要使用的 Python 版本的路径。 然后运行:

$ sudo /path/to/python/version awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws

在我的情况下,我会运行:

$ sudo /usr/local/bin/python3.7 awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws

【讨论】:

【参考方案4】:

又是我 :) 我找到了答案,问题是我正在使用全局 python 和 pip,而 AWS 在每次连接时都会刷新它。 我创建了 un 环境并在里面更新了 python 和 pip,效果很好。

【讨论】:

【参考方案5】:

执行上述操作:alias python=python36 在 ~.bashrc 文件中(使用 emacs、vim、您最喜欢的编辑器 - emacs ~.bashrc)然后保存文件。

然后在命令行终端输入:source ~/.bashrc(使更改生效)

【讨论】:

以上是关于在 AWS 中将 python3.5 设为默认值?的主要内容,如果未能解决你的问题,请参考以下文章

如何在基类中将默认构造函数设为私有?

如何在 ASP .NET Core 2.1 中将登录页面设为默认路由?

在 select2 中:如何在 rails 中将初始/默认 select2 选项设为空白?

默认值不会设置为 Nil? - 斯威夫特

默认情况下,如何将 AWS S3 存储桶中的所有对象设为公开?

在jQuery UI datepicker中将今天的日期设置为默认日期[重复]