anaconda配置的多版本python,除source activate 外,运行非默认版本的办法

在linux上通过anaconda配置了2个环境。默认是2.7的科学计算环境。还有一个3.4(命名为‘py34’)的做其他事情。

环境变量设置好了,所以现在直接python xxx.py可以以2.7运行该xxx.py

问题是,我有几个适用于python3的脚本。我现在是source activate py34 然后再python yyy.py
运行完之后deactivate

我搜索得知,似乎可以在python脚本前面加上 # usr/bin 等等“指定解释器版本”
但是没找到关于如何具体制定版本的,而且因为我是用anaconda设定的,一些路径也不太一样。

或者,可不可能有做到效果:**每次 py34 yyy.py。 机器即以python3.4 运行yyy.py?**

最终目的是要将一个python3的文件运行设定成定时任务。我想内一行内解决,会比每次都激活/退出环境方便很多

不知道是不是我的关键词没找对,这个问题应该很简单但是搜索了很久也没有找到解。

谢谢大家!

4个回答

可以这样
你把python2.7 ln -s 到python
然后把python3.4 ln -s 到python3

我一直都是这么做的.

dcxy0
Q544471255 回复melon_15: 因为我安装两个版本的时候并没有使用anaconda,所以对anaconda也不是很了解.只是从我自己的使用经验来看,可以直接配置.
接近 3 年之前 回复
dcxy0
Q544471255 回复melon_15: 一般这些在安装的时候就处理好了,不知道你是学习还是公司用,不过你可以搜索一下find / -name python 看看相关目录,对其进行配置.
接近 3 年之前 回复
melon_15
melon_15 目前“python +文件名”就可以使用anaconda里的python运行——这个效果我是这样做到的。http://www.codesec.net/view/459539.html
接近 3 年之前 回复
melon_15
melon_15 谢谢说明,不好意思还是失败了,我在anaconda目录找到一个 envs/py34但是 这样链接上还是command not found ;(所以用ls -al /usr/bin/python查了一个python命令的指向,只有一个' /usr/bin/python -> python2.7',没说这个python2.7是哪里的,所以我也找不到我的3.4在哪里了。。)
接近 3 年之前 回复
dcxy0
Q544471255 回复melon_15: 是这样,ln -s 源文件(你py的安装目录) 目标文件(一般是/usr/bin/python或者是/usr/bin/python3),然后你就可以在命令行里面用python或者python3命令了.
接近 3 年之前 回复
melon_15
melon_15 谢谢,但是我有很问一个小白的疑问。。我查到了ln -s是‘ln –s 源文件 目标文件’这个格式。但是这里的“源文件”和“目标文件”分别是指哪一个文件的路径呢?
接近 3 年之前 回复
melon_15
melon_15 谢谢回复。我看过这篇文章了。我是按照它的说明做完的。但是它没有提供我题干里提到的“一行内”解决“切换环境+运行程序”的办法。。。
接近 3 年之前 回复

看看这个有没有帮助:Python 多版本管理工具
http://blog.csdn.net/liufei_learning/article/details/39101477

围绕 Python 多版本管理工具 ,我觉得应该更容易解决问题。

melon_15
melon_15 谢谢你的推荐,好东西啊。但是我首先是要用anaconda管理包,这个环境/版本切换的便捷性是其次的。谢谢
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐