"David" <[email protected]> wrote
I don't know how else to describe it, that is so cool :)

:-)

Couple of comments below.

import textwrap
data = {'CBUILD':None, 'CFLAGS':None, 'MAKEOPTS':None}
def get_use():
    fname = open('/tmp/comprookie2000/emerge_info.txt')
    for line in fname:
        for keyphrase in data:
            if keyphrase in line:
                output = line.split('"')[1]
                data[keyphrase] = textwrap.fill(output, 80)
    fname.close()

get_use()

It would be better practice to put data inside the function and then return the result. Also I'd pass the filename into the function.

def get_use(fname):
     data = ....
for line in open(fname): ....
     return data

data = get_use('/tmp/foo/bar/baz.txt')

That makes the function, and therefore the module, more easily reusable and allows you to call the function several times on different files wityhout overwriting the results. You may not need to do that now but it might be useful in the future.

CBUILD = data['CBUILD']
CFLAGS = data['CFLAGS']
MAKEOPTS = data['MAKEOPTS']

Don't bother storing in variables just use the dictionary directly in your print statements. Learn to love and use Python's collections. They are the secret of much of Python's power.

Just some thoughts,

--
Alan Gauld
Author of the Learn to Program web site
http://www.alan-g.me.uk/

_______________________________________________
Tutor maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/tutor

Reply via email to