process command line parameter
Cameron Simpson
cs at zip.com.au
Sat Jan 17 16:40:07 EST 2009
On 17Jan2009 13:28, asit <lipun4u at gmail.com> wrote:
| Recently I was coding a link extractor. It's a command line stuff and
| takes parameter as argument.
| I found that the in operator is not always helpful.
| eg. if "--all" in sys.argv:
| print "all links will be printed"
Indeed. While I can't speak for your particular app, usually command
line parameters are context sensitive. Therefore one normally processes
them in order (especially if you want to support the fairly normal "--"
option which means "no more options after this", useful if you need to
supply a filename called "--app").
If you dont want to use the getopt standard module and thus its
conventionaly argument syntax, then one alternative is like this:
| its not helpful when some attribute value is sent in command line
| parameter.
| hence I want to process some data like find=".co.uk"
all_links=False
find=None
for arg in sys.argv[1:]:
if arg == "--":
break
elif arg =="--all":
all_links=True
elif arg.startswith("find="):
find=arg[5:]
else:
# unhandled argument: complain or drop out of loop
Cheers,
--
Cameron Simpson <cs at zip.com.au> DoD#743
http://www.cskk.ezoshosting.com/cs/
More information about the Python-list
mailing list