Problems returning data from embedded Python
Gabriel Genellina
gagsl-py2 at yahoo.com.ar
Tue Aug 12 00:37:53 EDT 2008
En Mon, 11 Aug 2008 12:58:00 -0300, Cromulent
<cromulent at justextrememetal.com> escribi�:
> Okay I'm having a few issues with this and I can't seem to get it sorted
> out (most likely due to my inexperience with Python).
>
> Here is my Python code:
>
> def fileInput():
>
> data = []
>
> s = raw_input("Please enter the filename to process (enter full path if
> not in current directory): ")
(in general, it's not a good idea mixing the user interfase with data
processing - I'd make the filename a parameter for this function. But this
has nothing to do with your main issue.)
> fd = open(s, "r")
> fd.readline()
> line = fd.readlines()
> for record in line:
I'd replace the above two lines with:
for record in fd:
> record = record.strip()
> items = record.split(',')
>
> for i in range(1, 5):
> items[i] = float(items[i])
>
> items[5] = int(items[5])
> data.append(items)
>
> fd.close()
>
> return items
`return items` or `return data`? Are you only interested on the *last*
line in the file? If so, I'd skip processing all previous lines...
> It works perfectly and does exactly what I want it to do. The problem
> comes when I try and convert the data I returned from the Python script
> and turn it into something useable in C.
>
> I have no idea. The C functions that seem most use deal with Tuples,
> when this is a list and I can't see any specific functions for dealing
> with lists in the C API. Can anyone give me some pointers in the right
> direction at all please? I know the C program has received the data
> correctly, I just need to put it in C types.
Uh? You have a complete API for working with list objects, the functions
named PyList_*
See http://docs.python.org/api/listObjects.html
There is also an abstract layer that works both with lists and tuples:
http://docs.python.org/api/sequence.html
If that's not what you are after, please provide more details...
--
Gabriel Genellina
More information about the Python-list
mailing list