开发者

IronPython: import random fails in IronPython Interactive

This fails in IronPython Interactive inside Visual Studio 2010:

» import random
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: No module named random

The same works fine in IronPython code in Visual Studio. It also works fine if I launch ipy.exe inside a Windows command prompt. What is the problem with IronPython Interactive and import? How do I fix开发者_如何学编程 Python Interactive so that it can import Python modules?

sys.path in IronPython Interactive gives this:

» import sys
» sys.path
['.',
 'C:\\PROGRAM FILES (X86)\\MICROSOFT VISUAL STUDIO 10.0\\COMMON7\\IDE\\EXTENSIONS\\MICROSOFT\\IRONSTUDIO\\0.4\\Lib',
 'C:\\PROGRAM FILES (X86)\\MICROSOFT VISUAL STUDIO 10.0\\COMMON7\\IDE\\EXTENSIONS\\MICROSOFT\\IRONSTUDIO\\0.4\\DLLs']

sys.path in ipy.exe on Windows command prompt gives this:

>>> import sys
>>> sys.path
['.',
 'C:\\Users\\MyName\\Desktop',
 'C:\\Program Files (x86)\\IronPython 2.7\\Lib',
 'C:\\Program Files (x86)\\IronPython 2.7\\DLLs',
 'C:\\Program Files (x86)\\IronPython 2.7',
 'C:\\Program Files (x86)\\IronPython 2.7\\lib\\site-packages']

I am using IronPython 2.7, Visual Studio 2010 and Windows 7 64-bit.


As you can see sys.path directories are different;
I suspect random module is implemented in IronPython.Modules.dll, then you should check if such dll is present in the paths of IronPython interactive.

If it's present, the problem is another and I don't know what could be...

otherwise in Ironpython interactive, before import random do:

sys.path.append(path)

with path being the folder of IronPython.Modules.dll (I guess 'C:\Program Files (x86)\IronPython 2.7') and it should work.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜