Calling a Perl module from Python

Zhang18 picture Zhang18 · Aug 30, 2010 · Viewed 8.7k times · Source

my question is the inverse of this one. In particular, I've dozens of existing modules written in Perl, some are object oriented and others just export a group of functions. Now since I have to write certain scripts in python but still would like to call those Perl modules, I'm wondering

1) if it is achievable, and

2) if so, what would be the best way of doing it

Ideally, the Perl modules would appear as "black boxes" to Python, so to speak. Something like:

 from perl_module import *
 return_value = perl_func(arg1, arg2, ...)

and

 object = perl_module.new()
 object.method1(arg1, arg2, ...)

but I'm sure to achieve this one needs to have something else imported / running at the background, if possible at all. Anything that is the counterpart to the Inline::Python would also be nice (but not ideal). Thx!