Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
IDEPython自动完成_Python_Visual Studio Code_Emacs_Autocomplete_Wrapper - Fatal编程技术网

IDEPython自动完成

IDEPython自动完成,python,visual-studio-code,emacs,autocomplete,wrapper,Python,Visual Studio Code,Emacs,Autocomplete,Wrapper,我有以下代码: (请注意,以下代码是实际代码的缩减) 如您所见,我有两个API—第一个定义foo函数,第二个定义bar函数。A&B实现foo,C&D实现bar 除此之外,我还有一个包装类,它可以获取对象列表,列表只能包含一个API实现,这意味着它只能获取A&B或C&D。它永远不会获取A&C A&D B&D 包装器类实现“get\u current\u object”函数,该函数返回该API的一个实现 我正在使用emacs(spacemacs)进行python开发(还尝试使用vscode解决我的特

我有以下代码: (请注意,以下代码是实际代码的缩减)

如您所见,我有两个API—第一个定义foo函数,第二个定义bar函数。A&B实现foo,C&D实现bar

除此之外,我还有一个包装类,它可以获取对象列表,列表只能包含一个API实现,这意味着它只能获取A&B或C&D。它永远不会获取A&C A&D B&D

包装器类实现“get\u current\u object”函数,该函数返回该API的一个实现

我正在使用emacs(spacemacs)进行python开发(还尝试使用vscode解决我的特定问题)。问题是,当我使用“get\u currect\u object”时,我没有正确的自动完成

first_wrapper.get_current_object().foo()
second_wrapper.get_current_object().bar()
在这个例子中,我的IDE无法完成foo或bar。我意识到IDE没有可能知道is应该完成foo或bar,因为这样做的唯一方法是运行代码(IDE不是这样做,而是解析模块)。我也尝试过重写dir,但是IDE没有使用该函数,只有ipython使用它

同样,该代码是真实代码的简化。我意识到这段代码有点奇怪,真正的代码对代码设计有更好的解释,遗憾的是我不能把它放在这里,因为它太大了


有没有办法告诉IDE返回的值可以是foo或bar

如果您将emacs与
anaconda模式
company anaconda
一起使用,那么您将在源缓冲区中获得预期的完成(一旦您在REPL中评估了代码)

first_wrapper.get_current_object().foo()
second_wrapper.get_current_object().bar()