How would I write this C code in Python?
Marc 'BlackJack' Rintsch
bj_666 at gmx.net
Fri Jul 6 13:39:43 EDT 2007
On Fri, 06 Jul 2007 17:31:50 +0000, DeveloperX wrote:
> I am trying to figure out how to rewrite the following chunk of code
> in Python:
>
> C source
> [code]
> typedef struct PF
> {
> int flags;
> long user;
> char*filename;
> unsigned char buffer[MAXBUFFERSIZE];
> } PF;
>
> typedef BLOCK
> {
> PF * packdata;
> } BLOCK;
>
> BLOCK* blocks;
> [/code]
>
> My first idea was to create a class for PF and a class for BLOCK, but
> I got lost somewhere along the lines. :\
>
> Python Attempt: Please note that since I can't type TABs online
> easily, I am using the @ character to represent TABs in the following
> Python code.
> [code]
> class PF:
> @def __init__(self):
> @@self.flags, self.user = 0, 0
> @@self.filename = ''
> @@self.buffer = []
>
> class BLOCK:
> @def __init__(self):
> @@self.packdata = []
>
> blocks = []
> [/code]
>
> Any Python Gurus out there that can help me?
At a first glance it looks okay but unless we know what you are going to
do with these data structures it's hard to tell if it is really the best
"translation".
`PF.buffer` might be better a string or an `array.array`. And is `BLOCK`
really just a structure with *one* member? Looks a bit odd IMHO.
Ciao,
Marc 'BlackJack' Rintsch
More information about the Python-list
mailing list