强制 Nosetests 使用 Python 2.7 而不是 3.4

Posted

技术标签:

【中文标题】强制 Nosetests 使用 Python 2.7 而不是 3.4【英文标题】:Force Nosetests to Use Python 2.7 instead of 3.4 【发布时间】:2014-12-22 03:58:45 【问题描述】:

我一直在使用 3.4 版学习 Python。我最近开始学习 Web.py,所以一直使用 Python 2.7,因为 Python 3.4 不支持 web.py。我为 Python 3.4 和 2.7 安装了 nose 1.3.4 模块。我需要在一些使用 Web.py 模块的 2.7 编写的 Python 代码上运行 nosetests 命令。但是,当我键入 nosetests 命令时,它会自动使用 Python 3.4,因此会抛出错误,因为无法在我的 Python 代码中导入 Web.py 模块。有没有办法强制鼻子测试使用 Python 2.7?运行 OS X Yosemite 的 Macbook Pro。

【问题讨论】:

嗯,很可能是调用 /usr/bin/python 指向 3.4,所以只需将链接更改为指向 2.7。 抱歉听起来很笨,但我对编程比较陌生。你能具体说明你的意思吗。如何更改链接? 我可以,但我不会!相反,我会告诉你阅读有关符号链接的内容,以及如何在 google 深处的某个地方在 OS X 上切换 python 版本。 我猜想 virtualenv 是正确的方法。但是,回到我原来的问题,是否有一个终端命令可以强制它在 Python 2.7 而不是 3.4 中运行鼻子测试? 尝试python2.7 -m nose 而不是运行nosetests 【参考方案1】:

正如@dano 在他的评论中建议的那样:

尝试python2.7 -m nose 而不是运行nosetests

【讨论】:

以上是关于强制 Nosetests 使用 Python 2.7 而不是 3.4的主要内容,如果未能解决你的问题,请参考以下文章

python机器学习使用sklearn模块出错,求解答

python测试框架nose

python+selenium 时间控件需要导入啥包

在Python中努力处理导入问题

python nose测试

python写文件时,使用代码强制刷新文件