python - 并行打开 IPython Notebook 2.7 和 3.4

标签 python python-2.7 python-3.x ipython

我已经搜索过了,但还没有找到我想要做的事情的明确答案。如果答案已经存在,我将不胜感激,请传递 URL。供引用:我是运行多个 Python 版本的新手,并且可以通过两个解释器运行代码。我使用的是 Windows 7,并使用了 anaconda 发行版。

在我的 cmd 中,我已默认激活 Python2.7。为了访问Python2.7和Python3.4,我分别使用pythonpy -3。我希望能够并行打开 2.7 和 3.4 的 IPython 浏览器笔记本,但不确定命令的外观/如何确定哪个浏览器窗口正在使用哪个解释器。

来自 @Jonas Buckner 对 How to activate Ipython Notebook and QT Console with Python 3.4 in Anaconda 2.0 的评论,看来我可以指定端口了。我的问题是,我如何知道哪个端口号与每个版本关联?这是固定的,还是有某种方法可以确定哪个端口?

ipython notebook not launching提到 ipythonipython3 相比,我更喜欢后者,而不是 port 方法。然而,当我尝试ipython3笔记本时,我得到:

'ipython3' is not recognized as an internal or external command, operable program, or batch file.

可以设置别名吗?如果是这样,怎么办?

重申一下,一旦我并行打开笔记本,有没有办法让我知道哪个笔记本是哪个版本?

提前致谢!

最佳答案

您可以指定端口,以便选择每个版本要使用的端口号; python2 与 python3 没有预定义端口。

例如:

ipython notebook --port=10000

将使用默认的Python解释器在端口10000上运行IPython。然后,您可以通过访问 http://localhost:10000/tree 连接到该笔记本。

假设 ipython2 使用 python2.7 启动 IPython,而 ipython3 使用 python3.4 启动 IPython,您可以使用以下命令运行这两个 IPython:

ipython2 notebook --port=27272
ipython3 notebook --port=34343

如果页面的 URL 以 localhost:27272 开头,则笔记本正在运行 python 2.7,而如果 URL 以 localhost:34343 开头,则笔记本正在运行 python 3.4.


请注意,这本身与不同的 python 版本没有任何关系。 您可以使用相同的解释器在不同的端口上运行两个 IPython 实例。

如果您想使用特定解释器启动 IPython,您可以使用 -m 开关将其作为模块启动:

python2.7 -m IPython notebook --port=27272
python3.4 -m IPython notebook --port=34343

因此您不需要将 ipythonipython3 作为可识别的命令。您只需要能够运行两个不同的解释器即可。

再次强调:要了解您使用的解释器版本,只需查看 URL 中的端口号即可。或者您可以在解释器中检查sys.version_info


如果您必须经常这样做,您可能有兴趣将端口号设置放入配置文件中。我不知道是否可以有两个不同的配置文件,一个用于python2,一个用于python3。但是,在文件内,您可以检查版本并设置正确的端口号。

关于python - 并行打开 IPython Notebook 2.7 和 3.4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27947049/

相关文章:

python - 双循环比较列表有什么Python提示或技巧吗?

python - pickle 类方法

python - 属性错误 : module 'cv2.cv2' has no attribute 'cv'

python-2.7 - 如何按字母顺序获取单词并删除符号 u'?

python-2.7 - 嵌套字典中的 has_key

python - MD5 Python 暴力破解错误

python - 在文本中使用 sympy 打印希腊字母

python - 还记得上次函数调用的结果吗?

python - 如何将循环的输出发送到 python 列表?

python - Python Asyncio队列获取未收到消息