首页 > 解决方案 > 在 IPython 中检测哪个 CMD/终端调用用于启动 IPython

问题描述

假设我在 Windows 10 CMD 中使用以下命令启动 IPython:

 "C:\MyFolder\ipython.exe" -i --matplotlib=qt5 --InteractiveShellApp.exec_lines="['import numpy as np']"

在初始化的 IPython 控制台中,有没有办法让我准确地找到用于初始化 IPython 控制台的命令(即上述命令)?

如果没有,是否至少有一种方法可以检索该部分"C:\MyFolder\ipython.exe",即当前运行的 ipython 文件的确切路径?

标签: pythoncommand-lineterminalipython

解决方案


您请求的信息(原始程序参数传递给带有 的 C 程序main(int argc, char *argv))在 python 解释器级别不可用(更完整 - 但部分,因为它不解决 python 命令和开关 - 提供了解释在如何找到提供给 Python 的确切 CLI 命令?

sys.argv提供您传递给脚本的参数,包括脚本本身sys.argv[0],但不包括 python 命令行开关。

但是,您可以获得的一件事是启动的可执行文件:sys.executable

所以你能做的最接近的是:

args = [sys.executable] + sys.argv

推荐阅读