在 IronPython 2.7.1 中,我可以按名称导入一些.NET程序集:
>>> from System.Collections import *
>>> from System.IO import *
其他人给我一个错误:
>>> from System.Xml import *
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named Xml
执行以下操作可修复错误:
>>> import clr
>>> clr.AddReferenceByPartialName('System.Xml')
>>> from System.Xml import *
为什么我必须为某些程序集而不是其他程序集调用clr.AddReferenceByPartialName
?
答案 0 :(得分:3)
默认情况下,某些程序集(如mscorlib.dll)存在。如果您想要的类的文档说明它在mscorlib中(例如,http://msdn.microsoft.com/en-us/library/system.collections.arraylist.aspx),那么您将不需要添加引用,否则您将需要。它类似于何时/为什么需要添加对C#项目的引用。