用于Visual Studio的Python工具 - 告诉IDE参数的类型

时间:2016-08-07 19:47:15

标签: python visual-studio code-completion

我刚开始使用Visual Studio 2015,我非常喜欢它,尤其是代码完成功能。现在我正在编写一些简单的Python代码来在Tkinter Canvas上绘制一个对象:

    def draw(self, can):
        """ can is a Tkinter canvas on which this node will draw itself. """
        can.<something>

这是Python,在实际代码中没有任何地方表明&#34;可以&#34;将是一个画布,所以VS键入&#34; can之后不能自动完成或建议任何内容。&#34;有没有办法告诉Visual Studio可以使用类型为tkinter.Canvas?

2 个答案:

答案 0 :(得分:4)

是的,您可以使用断言语句。这将触发VS自动完成设置。这不是最美好的方式,但我认为现在这是最好的选择。

assert isinstance(can, tkinter.Canvas)

请查看this answer了解更多信息。

答案 1 :(得分:3)

我将在前言中说我还没有使用Visual Studio for Visual Studio(虽然我使用Visual Studio for C#并且它是一个很棒的IDE)所以这不是&#39;直接回答你的问题。但是,我猜测来自&#34;我刚刚开始使用Visual Studio 2015&#34;您可能正在检查不同的工具,所以这可能对您有所帮助。

我几天前开始使用PyCharm,因为我计划尽快做一些严肃的Python工作,我不得不说它在我看来非常惊人。

要回到你的问题,你至少有几种方法让PyCharm推断你的参数类型。

方法1:Python 3类型提示

如果你正在使用Python 3.5解释器,你可以通过在代码中提供type hints来帮助PyCharm推断出参数的类型。

enter image description here

方法2:文档字符串

或者,您可以通过提供包含类型信息的函数的docstring来让PyCharm推断类型。在下面的示例中,我使用了reStructuredText格式的文档。

这样做的好处在于,无论您使用哪种翻译,它都能正常工作。

enter image description here