[EMAIL PROTECTED] wrote: > I am writing a parser and I have a routine that can digest > a series of tokes: > > def digest(*args) > > I use it like this: digest("FOR", "IDENT", "EQ", "INTVAL", "COLON"). > This part works fine. My digest function returns a list of the values > associated with each token. > > dummy1, ident, dummy2, start = digest("FOR", "IDENT", "EQ", "INTVAL", > "COLON") > > But I dont like the way this looks and I want my digest routine to do > more work. I want to be able to specify the variable bindings in the > call to digest - and not have them be on the LHS of the assignment. > > Ideally I want to call digest like this: > > digest("FOR", ("IDENT",ident), "EQ", ("INTVAL",start), "COLON") > > and have ident and start be local variable defined in the place that > calls digest. > > Is it possible to do something like that? > > -Ram > Can't do what you want specifically, but you can stuff everything into a dictionary and pass it around.
I'm not 100% sure I understand what you want to accomplish, but I hope this helps. Have digest return a dictionary of tokens/values. tokenDict=digest("FOR", "IDENT", "EQ", "INTVAL", "COLON") then refer to things as tokenDict['ident'], tokenDict['start'] -Larry Bates -- http://mail.python.org/mailman/listinfo/python-list