【发布时间】:2019-01-23 00:26:50
【问题描述】:
TL,DR:如何让我的机器/anaconda 忘记 python 3.7 的存在,以便我可以在 python 3.6 上运行所有内容?
为了便于阅读,我已将整个故事以列表的形式列出。
1) 我在 Python 2.7 中有一个可用的 BagOfWords。它在 Jupyter Notebooks 上运行得很好。
2) 我想使用一个名为 Newspaper 的 python 库,但它在 python 3 中而不是 python 2 中效果最好。
3) 我下载了 python 3.7 以便 Newspaper 可以运行。
4) Newspaper 在 Python 3.7 上运行良好,但另一个模块 tensorflow,它是 BagofWords 运行所必需的,尚未更新为与 Python 3.7 一起使用
5) 我下载了 Python 3.6,它适用于 tensorflow。
6) 我从我的机器上删除了 Python 3.7。
7) 我现在尝试使用 python 3.6 重新打开我的工作,以便 tensorflow 可以工作。 Jupyter Notebook 打开,但提示我选择要使用的内核。我选择 Python 3,但收到此错误消息:Error Starting Kernel FileNotFoundError: [Errno 2] No such file or directory: '/Library/Frameworks/Python.framework/Versions/3.7/bin/python3':
8) 我知道它正在尝试通过不再存在的路径(python 3.7 路径)来查找内容。我删除并重新安装 anaconda,希望它会忘记这条旧路径(和 python 3.7),以便我可以使用 Python 3.6。这没用。
问题:如何让我的机器/anaconda 忘记 python 3.7 的存在,以便我可以在 python 3.6 上运行所有内容?这是我第一次使用 jupyter notebook,所以我一直在寻找答案,但其中许多对我来说没有意义。我正在开发运行 MacOs Mojave 10.14.1 的 2015 Macbook Pro
更新:即使尝试使用 conda 的新环境也不起作用。我最终放弃了,把我所有的代码都移到了 google colab,我不是它的忠实粉丝,但至少它确实有效....
【问题讨论】:
-
我认为长期的最佳解决方案是让您对所有内容都使用 conda 环境,因为您可以为每个项目设置不同的环境,每个项目都有自己版本的必要库、Python 和很快。如果您像这样从头开始,那么 Jupyter 应该可以正常工作(只需记住在每个环境中安装它,并在启动 Jupyter 之前激活环境)。但是,对于您的直接问题,听起来好像您需要修复现有 Jupyter 安装的配置。
jupyter kernelspec list的输出是什么? -
@nekomatic 感谢您的帮助!它给我的输出是可用内核:python3 /Users/MyName/Library/Jupyter/kernels/python3
-
我将 kernel.json 中的 argv 编辑为“/Library/Frameworks/Python.framework/Versions/3.6/bin/python3”,而不是 Versions/3.7/。现在 Jupyter 将为我打开,但是当我尝试运行我的程序时,什么也没有发生——如果我运行一个只显示 print("hello world") 的段,什么都不会发生。
-
我不是 Jupyter 专家,所以我唯一能想到的建议是卸载 Jupyter(确保清除其所有配置文件、路径条目等 - 可能检查文档)和重新安装它。您可能需要查看文档以了解如何为多个 Python 版本正确设置 - 或按照之前的建议使用 conda。
标签: python python-3.x tensorflow anaconda jupyter-notebook