PyArg_Parse vs PyArg_ParseTuple
chalain42 at hotmail.com
Wed Oct 17 03:27:42 CEST 2001
I'm new to Python, and I've searched the archives for more info but can't
seem to find the info I need. I am having trouble using PyArg_ParseTuple().
Here is the python code I'm embedding:
As you see, it's not too complex. :-) This is just a proof of concept I'm
working on to prove it can be done.
Here is the code I'm trying to embed it in. Note: this is C++, does that
make a difference in this case?
long val = 7;
PyObject *pmod, *pfunc, *pargs, *pstr;
printf( "Processing data: %ld\n", val );
pmod = PyImport_ImportModule( "TestModule" );
pfunc = PyObject_GetAttrString( pmod, "NumberFunction" );
pargs = Py_BuildValue( "(l)", val );
pstr = PyEval_CallObject( pfunc, pargs );
// *** This code works ***
PyArg_Parse( pstr, "l", &val );
// *** This code does NOT work ***
//PyArg_ParseTuple( pstr, "l", &val );
printf( "Val returned was %d\n", val );
If I use the ParseTuple version, the code appears to run fine, but val is
unchanged. I've tried using "(l)" as the string but I'm grasping at straws
I read in the documentatian that PyArg_Parse() is deprecated, so I would
like to get this working correctly.
Oh, this is Python 2.1.1 on Windows 2000. (Not ActivePython.)
Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp
More information about the Python-list