4

So I have a basic ZIPPED IronPython (2.6 or 2.6.1) that I just unzip, start ipy.exe, type "import os" and hit enter. The following output happens:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named os

It doesn't work even if I import clr first. What's it to be done ?

I've googled this issue but no relevant answer. The closest idea was this (which didn't work):

import clr
clr.AddReference("IronPython")
clr.AddReference("IronPython.Modules")
import os
lj8888
  • 367
  • 4
  • 8

2 Answers2

5

Likely, the problem is not the in zip, but in os module location.

You need to have CPython installed and your script should be able to reach the CPython Lib directory. To get this you can either copy all the os necessary files under your Lib directory, or you can set the environment variable IRONPYTHONPATH to point to the Lib directory below CPython.

digEmAll
  • 56,430
  • 9
  • 115
  • 140
  • but won't this conflict runtimes ? if any installed python library from Lib has C or C++ modules ? – lj8888 Oct 11 '10 at 08:38
  • Mmmh... I'm not sure, but probably some modules won't work if they depend on C or C++... – digEmAll Oct 11 '10 at 09:15
  • This worked for me. On OSX I did `export IRONPYTHONPATH=/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/` – tdc Jul 25 '14 at 21:18
1

This must help:

import sys
sys.path.append("C:\\PythonXY\\Lib")
andrewsi
  • 10,807
  • 132
  • 35
  • 51
snippets
  • 11
  • 1