如何在iPython中选择Python 3.7或Python 3.8?

如何在iPython中选择Python 3.7或Python 3.8?,python,ipython,Python,Ipython,我的操作系统是Windows7 我需要在Python中使用TensorFlow和Keras,但在Python 3.8中它还不能工作。因此,我再次安装了Python3.7及其软件包 在IDE内部,魅力很简单。它只需在设置中添加另一个解释器就可以了。因此,当我创建一个项目时,我需要选择正确的解释器 我还使用iPython进行小测试。我已经搜索了所有Stackoverflow,但我没有找到2020年有效的答案。我使用iPython而不是Jupyter环境 首先,我已经创建了内核,正如iPython网站

我的操作系统是Windows7

我需要在Python中使用TensorFlow和Keras,但在Python 3.8中它还不能工作。因此,我再次安装了Python3.7及其软件包

在IDE内部,魅力很简单。它只需在设置中添加另一个解释器就可以了。因此,当我创建一个项目时,我需要选择正确的解释器

我还使用iPython进行小测试。我已经搜索了所有Stackoverflow,但我没有找到2020年有效的答案。我使用iPython而不是Jupyter环境

首先,我已经创建了内核,正如iPython网站上的说明所说

python -m ipykernel install --user
它在
c:\Users\myname\AppData\Roaming\jupyter\kernels

在我使用
iPython-h
之后,他告诉我使用内核子命令:

Subcommands are launched as `ipython cmd [args]`. For information on using
subcommand 'cmd', do: `ipython cmd -h`.
感觉更有动力,我尝试了命令
ipythonkernel-h
。但我有一个非常混乱的文本

所以我尝试使用
内核
选项

C:> iPython kernel
它给了我以下信息:

To connect another client to this kernel, use:
    --existing kernel-3404.json
但是,我没有选择正确的内核

我尝试使用我的内核文件,但没有成功

Invalid argument: '--kernel.json'

所以我迷路了,因为在任何地方我都找不到iPython的内核子命令行命令选项的详细说明。

我找到了解决Windows 7中问题的解决方案。我甚至不需要
ipyKernet
软件包

我已经开始在Python3.7和Python3.8中查找
iPython.exe
文件

因此,我制作了以下脚本
py.BAT
,并将其存储在PATH环境变量内的文件夹中(可以使用
控制面板
系统
高级系统设置
环境变量
)编辑路径变量:

现在这是小菜一碟:

如果我想在Python3.7上运行iPython

如果我想知道如何在Python 3.8上运行iPython

py 38
当然,我在每个iPython会话中都检查了Python版本:

这些信息是

3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 23:11:46) [MSC v.1916 64 bit (AMD64)]

任何其他参数

py 40 # e.g.
导致

Syntax: py 37   - iPython 3.7
        py 38   - iPython 3.8
        py      - iPython 3.8
Python中的内部引用通常不使用
PATH
环境变量,但当在shell中使用实用程序作为
pip
时,会出现问题,因为如果在shell中编写
pip
,它会按
PATH
变量中字符串内容的顺序搜索第一个可执行文件,通常是最后一个Python版本

因此,必须在同一文件夹中的旧Python版本中使用另一个名称(例如:
pip.exe
pi.exe
)复制该实用程序(请不要重命名原始文件)


另一种解决方案是临时更改
PY.BAT中的path环境变量以及任何其他变量(如有必要)。我还没有这样做,因为到目前为止一切都很好。

我建议在需要时使用或简化和隔离python版本和包的更改。看一看,;D
Anaconda
非常重,我发现了一些bug,所以退出了
VirtualEnv
我尝试了一下,我安装了2个虚拟环境,但没有成功。它与Jupyter一起工作,但与iPython不一起工作。理论上,
ipykernel
是Jupyter/iPython开发人员制作的一种更简单的形式,可以轻松地使用Python版本。
py 38
import sys
print(sys.version)
3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 23:11:46) [MSC v.1916 64 bit (AMD64)]
3.7.6 (tags/v3.7.6:43364a7ae0, Dec 19 2019, 00:42:30)[MSC v.1916 64 bit (AMD64)]
py 40 # e.g.
Syntax: py 37   - iPython 3.7
        py 38   - iPython 3.8
        py      - iPython 3.8