4

我喜欢 PyCharm 并且以前在我的 Python 项目中使用过它,但是我刚开始使用 IronPython,我不知道如何制作 PyCharm 或任何其他 IDE(除了可以正常工作的 VS)识别 .NET图书馆。

例如,我有代码:

from System.Environment import *

path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)

上面的代码工作正常,但“系统”部分到处都带有灰色下划线,并带有“未解决的参考系统”消息。IronPython 文档解释说 System 不是一个模块,而是一个命名空间。如果我这样做,type(system)我会得到<type 'namespace#'>. 那么有没有办法让 PyC​​harm/PyDev 也能识别命名空间呢?另一方面,PATH 很好,一切都很好。

4

3 回答 3

5

出于性能原因,默认情况下 PyCharm 不会为 .NET 程序集生成 Python 存根。您可以通过在导入语句中将插入符号放在未解析的引用上、按 Alt-Enter 并选择“为二进制模块生成存根...”快速修复来触发生成。

于 2011-11-14T10:29:40.553 回答
3

请注意,这应该在 PyDev 中正常工作(只需确保您配置 IronPython 解释器并将您的项目配置为 IronPython 项目)。

另一个注意事项是上面的代码实际上应该是:

from System import Environment

path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
于 2011-11-28T12:03:27.330 回答
0

不是 PyCharm,但 Michael Foord 有关于如何使用 Wing 执行此操作的信息:http ://www.voidspace.org.uk/ironpython/wing-how-to.shtml - PyCharm 可能有一些类似的机制可用。

于 2011-11-13T05:21:35.710 回答