"Borse, Ganesh" <[EMAIL PROTECTED]> wrote:

> 2) my this code got compiled but when running, I got an error from
> Py_CompileString, as below. Why is it so? 
>   File "<string>", line 1
>     if ( (size < 1000) & (vol < (0.001 * ADV)) & (prod=="Stock")):
>     print "OK" ^
> SyntaxError: invalid syntax
> 
>   But when I executed the same code in python process, it worked fine.

You passed Py_eval_input as the start token to Py_CompileString. That means 
you want to evaluate a single expression and an 'if' statement isn't an 
expression. Use Py_file_input to compile a module or Py_single_input for a 
single statement.

Have you looked at using Pyrex? It makes this kind of task really easy: you 
just define a Pyrex function callable from C which imports and calls 
whatever Python code you want. All the work of allocating and releasing 
Python objects gets done for you.

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to