有没有办法运行特定的软件启动特定的 python 版本?

2017-01-07 22:45:51 +08:00
 uuair

我想用 you-get 下载视频,但这是运行在 python3 环境下的,而我还在学习 python2 ,新手嘛,就怕折腾,有没有办法指定软件运行在某个环境下?如果不成,我只能切换了,因为我的 python3 是在 pyenv 下面安装的,切换到不是特别麻烦。。。

1632 次点击
所在节点    问与答
14 条回复
xmoiduts
2017-01-07 23:27:33 +08:00
py -2 xxx.py

py -3 xxx.py
myh
2017-01-08 00:01:30 +08:00
virtualenv ,可以试一下。
sensui7
2017-01-08 00:09:31 +08:00
shebang
binux
2017-01-08 00:14:47 +08:00
什么鬼,你这根本就不是问题,你 pip3 安装的 you-get 就是调用的 python3 ,和你 python 是 2 还是 3 没有任何关系。
根本不存在切换的问题。
Miy4mori
2017-01-08 00:24:07 +08:00
docker 或者 vagrant
uuair
2017-01-08 01:38:30 +08:00
@xmoiduts 我这个是 pip3 安装了 you-get 以后的事情。。。所以我可以设置全局 3 ,用 py -2 的方式学我的 2 对么?

@myh 我正在看呢。。。但是没找到怎么给特定程序设置特定虚拟环境。。。


@Miy4mori 我再装个 docker ,是不是太。。。。


@binux

```
localhost:~ uuair$ you-get -v
pyenv: you-get: command not found

The `you-get' command exists in these Python versions:
3.6.0

```

这是我在 python2 下输入的情况
binux
2017-01-08 02:25:08 +08:00
@uuair which you-get, 如果它不位于全局 $PATH ,移动到全局 $PATH 。然后打开,第一行,如果指向 pyenv 的路径,改到具体的 python3 路径上。
uuair
2017-01-08 03:11:20 +08:00
@binux you-get 跟 python3 肯定都在一个虚拟目录里啊
/Users/uuair/.pyenv/shims/you-get
/Users/uuair/.pyenv/shims/python

这还怎么改?我只能 pyenv global 3.6.0 的时候才能访问到 python3 啊
binux
2017-01-08 03:20:22 +08:00
@uuair 你 ll /Users/uuair/.pyenv/shims 一下, shims 应该是个软连接。如果不是,那么 /Users/uuair/.pyenv/shims/you-get 就是个软连接。把它移到 /usr/local/bin 。
然后打开 /usr/local/bin/you-get ,第一行,如果它是 /Users/uuair/.pyenv/shims/python ,把它改成 /Users/uuair/.pyenv/versions/3.4.2/bin/python (取决于 ll /Users/uuair/.pyenv/shims/python 的结果)
uuair
2017-01-08 03:24:03 +08:00
@binux 我解决了,你给了我一个思路。。。。因为说的太复杂了,我懒得改了,所以我用了一个命令
pyenv global system 3.6.0
我把俩 python 都弄上来了,现在可以了-_-
python -V 显示的是 2.7 ,但是 3 的也可以运行
binux
2017-01-08 03:26:31 +08:00
@uuair 就不应该装 pyenv 里,它的设计理念是要求指令跟着切换的版本变的。
如果你用 brew 在系统上装一个 python3 ,用那个 python3 安装 you-get 就没这个问题。
uuair
2017-01-08 03:49:15 +08:00
@binux 我一直以为不能装两个 python 呢
Tink
2017-01-08 10:56:25 +08:00
现在 Linux 不都是自带两个版本的 python 吗
leopku
2017-01-08 19:33:19 +08:00
pyenv 不解释

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

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

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

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

© 2021 V2EX