IronPython: случайный сбой импорта в IronPython Interactive - PullRequest
6 голосов
/ 22 мая 2011

Сбой в IronPython Interactive внутри Visual Studio 2010:

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

То же самое отлично работает в коде IronPython в Visual Studio.Это также работает нормально, если я запускаю ipy.exe в командной строке Windows.В чем проблема с IronPython Interactive и импортом?Как исправить Python Interactive, чтобы он мог импортировать модули Python?

sys.path в IronPython Interactive дает следующее:

» 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 в ipy.exe в командной строке Windows даетВот это:

>>> 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']

Я использую IronPython 2.7, Visual Studio 2010 и Windows 7 64-бит.

1 Ответ

5 голосов
/ 22 мая 2011

Как видите, sys.path каталоги разные;
Я подозреваю, что модуль random реализован в IronPython.Modules.dll, тогда вам следует проверить, присутствует ли такая dll в путях интерактивного IronPython.

Если он присутствует, проблема в другом, и я не знаю, что может быть ...

иначе в интерактивном Ironpython, до import random do:

sys.path.append(path)

с path является папкой IronPython.Modules.dll (я думаю, 'C: \ Program Files (x86) \ IronPython 2.7'), и она должна работать.

...