So the return value from getopt.getopt() is a list of tuples, e.g.
>>> import getopt
>>> opts = getopt.getopt('-a 1 -b 2 -a 3'.split(), 'a:b:')[0]; opts
[('-a', '1'), ('-b', '2'), ('-a', '3')]
what's the idiomatic way of using this result? I can think of several
possibilities.
For options not allowed to occur more than once, you can turn it into
a dictionary:
>>> b = dict(opts)['-b']; b
'2'
Otherwise, you can use a list comprehension:
>>> a = [arg for opt, arg in opts if opt == '-a']; a
['1', '3']
Maybe the usual idiom is to iterate through the list rather than using
it in situ...
>>> a = []
>>> b = None
>>> for opt, arg in opts:
... if opt == '-a':
... a.append(arg)
... elif opt == '-b':
... b = arg
... else:
... raise ValueError("Unrecognized option %s" % opt)
Any of the foregoing constitute The One Way To Do It? Any simpler,
legible shortcuts?
Thanks.
--
http://mail.python.org/mailman/listinfo/python-list