编写用于Python对象自动内省的elisp程序

编写用于Python对象自动内省的elisp程序,python,emacs,elisp,introspection,Python,Emacs,Elisp,Introspection,我记得看到PyCharm和RStudio能够显示当前交互会话中的数据/模块/功能 例如,当您执行a=[1,2,3]操作时,窗口中会有一小部分提供有关对象a的信息 在Emacs中是否有类似的方法(可能使用pythoninspect模块)?我通常在编写python时在Emacs中运行python交互会话。打开源文件后,按C-C-z,可以指定要使用的python解释器。这将把窗口一分为二,左侧是源代码,右侧是output/pythonshell。选择源文件后,您可以按C-C-C评估缓冲区,并在右侧窗口

我记得看到PyCharm和RStudio能够显示当前交互会话中的数据/模块/功能

例如,当您执行
a=[1,2,3]
操作时,窗口中会有一小部分提供有关对象
a
的信息


在Emacs中是否有类似的方法(可能使用python
inspect
模块)?

我通常在编写python时在Emacs中运行python交互会话。打开源文件后,按
C-C-z
,可以指定要使用的python解释器。这将把窗口一分为二,左侧是源代码,右侧是output/pythonshell。选择源文件后,您可以按
C-C-C
评估缓冲区,并在右侧窗口中显示其输出。评估代码后,您可以使用
C-x o
切换到shell,而在shell中,您可以使用
dir()
列出所有变量、模块、函数等。就像您在交互式python shell中完成了while操作一样


您可以在右边的shell中运行
dir(a)
type(a)

我知道所有这些。你似乎不明白我的问题。关键不在于手动检查对象,而在于让Emacs能够显示工作区中的内容。如果是这样,那么您实际上需要的是帮助编写一个elisp程序,该程序打开python交互式会话并代表您进行eval调用,以扫描和解析我上面提到的那些调用。您可能希望编辑您的问题以反映这一点。目前正在研究此问题,不知道您是否找到了解决方案!谢谢