Python Visual Studio 的工具 - 告诉 IDE 参数的类型
Python Tools for Visual Studio - tell the IDE what type a parameter will be
我刚开始使用 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,在实际代码中没有任何地方表明 "can" 将成为 Canvas,因此 VS 无法在我键入后自动完成或建议任何内容"can." 有什么方法可以告诉 Visual Studio 可以是 tkinter.Canvas 类型吗?
是的,您可以使用断言语句。这将触发 VS 自动完成设置。这不是最漂亮的方法,但我认为现在这是最好的选择。
assert isinstance(can, tkinter.Canvas)
查看 this answer 了解更多信息。
我要先说我没有使用 Visual Studio 的 Python 工具(尽管我对 C# 使用 Visual Studio 并且它很棒 IDE) 所以这不是您问题的直接答案。但是,我从 "I just started using Visual Studio 2015" 猜测您可能正在检查不同的工具,所以也许这对您仍然有帮助。
几天前我开始使用 PyCharm,因为我计划很快做一些严肃的 Python 工作,我不得不说在我看来它非常了不起。
回到你的问题,你至少有几种方法可以让 PyCharm 推断你的参数类型。
方法一:Python 3 类型提示
如果您使用的是 Python 3.5 解释器,您可以通过在代码中提供 type hints 来帮助 PyCharm 推断参数类型。
方法二:文档字符串
或者,您可以让 PyCharm 通过提供包含类型信息的函数的文档字符串来推断类型。在下面的示例中,我使用的是 reStructuredText 格式的文档。
这样做的好处是,无论您使用哪种解释器,它都可以工作。
我刚开始使用 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,在实际代码中没有任何地方表明 "can" 将成为 Canvas,因此 VS 无法在我键入后自动完成或建议任何内容"can." 有什么方法可以告诉 Visual Studio 可以是 tkinter.Canvas 类型吗?
是的,您可以使用断言语句。这将触发 VS 自动完成设置。这不是最漂亮的方法,但我认为现在这是最好的选择。
assert isinstance(can, tkinter.Canvas)
查看 this answer 了解更多信息。
我要先说我没有使用 Visual Studio 的 Python 工具(尽管我对 C# 使用 Visual Studio 并且它很棒 IDE) 所以这不是您问题的直接答案。但是,我从 "I just started using Visual Studio 2015" 猜测您可能正在检查不同的工具,所以也许这对您仍然有帮助。
几天前我开始使用 PyCharm,因为我计划很快做一些严肃的 Python 工作,我不得不说在我看来它非常了不起。
回到你的问题,你至少有几种方法可以让 PyCharm 推断你的参数类型。
方法一:Python 3 类型提示
如果您使用的是 Python 3.5 解释器,您可以通过在代码中提供 type hints 来帮助 PyCharm 推断参数类型。
方法二:文档字符串
或者,您可以让 PyCharm 通过提供包含类型信息的函数的文档字符串来推断类型。在下面的示例中,我使用的是 reStructuredText 格式的文档。
这样做的好处是,无论您使用哪种解释器,它都可以工作。