Python UDF for piglatin script not finding re module
Question: I'm having trouble creating a UDF for a piglatin script I'm using. My problem
is that when I run the script with `pig script.pig` I get the following error:

    
    
    [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1121: Python Error. Traceback (most recent call last):
      File "utils.py", line 3, in <module>
        import re
    ImportError: No module named re
    

And on my "utils.py" script, I'm importing the module like so: `import re`

Why is it not finding the `re` module and how can I fix it?

**Edit** I should note that if I run the python script directly using the
`python` command, I don't get an error saying that it couldn't find the `re`
module.

**Edit 2**

Ok, based on the comments, I installed jython (which wasn't installed on my
system) and here are the outputs of `print sys.path` for my script:

_Using python_

    
    
    ['/home/hduser/bqmScripts/betsScripts', '/usr/lib/python2.6', '/usr/lib/python2.6/plat-linux2', '/usr/lib/python2.6/lib-tk', '/usr/lib/python2.6/lib-old', '/usr/lib/python2.6/lib-dynload', '/usr/lib/python2.6/dist-packages', '/usr/lib/python2.6/dist-packages/PIL', '/usr/lib/python2.6/dist-packages/gst-0.10', '/usr/lib/pymodules/python2.6', '/usr/lib/python2.6/dist-packages/gtk-2.0', '/usr/lib/pymodules/python2.6/gtk-2.0', '/usr/local/lib/python2.6/dist-packages']
    

_Using Jython_

    
    
    ['', '/usr/share/jython/Lib', '/usr/lib/site-python', '__classpath__']
    

_Using pig_

    
    
    ['/pig/lib/Lib', '__classpath__', '__pyclasspath__/']
    

After seeing this, I tried to add the missing path elements from jython into
the pig version, and what I get now is this:

    
    
     File "utils.py", line 8, in <module>
        import re
      File "/usr/share/jython/Lib/re.py", line 7, in <module>
        import sre, sys
      File "/usr/share/jython/Lib/sre.py", line 97, in <module>
        import sre_compile
      File "/usr/share/jython/Lib/sre_compile.py", line 17, in <module>
        assert _sre.MAGIC == MAGIC, "SRE module mismatch"
    AssertionError: SRE module mismatch
    

**SOLVED**

To solve my latest error message I looked for the version of jython that my
pig installation was using (2.5) and installed that one manually. That fixed
the issue.


Answer: `re` is part of the stdlib, therefore either your Python installation is
broken or incomplete, or something has damaged the contents of `sys.path`.

