Python : parsing the command line options using optparse

Ganesh Pal ganesh1pal at gmail.com
Wed Feb 26 10:30:21 CET 2014


On Tue, Feb 25, 2014 at 9:55 PM, Peter Otten <__peter__ at web.de> wrote:

>As you are just starting I recommend that you use argparse instead of
 optparse.

 I would love to use argparse but  the script that I plan to write has to
run on host machines that Python 2.6

 I have freebsd clients  with python  2.6  dont want to install python new
version on all the host machine which will be eventually upgraded to 2.7 .

I wanted know if I could use argparse with python 2.6 and is it possible to
add  something like   #pkg_add -r install python-argparse and install
python argparse module before I use it.





> >If you are asking why short options don't work in conjunction with = -- I
> >don't know, it is probably a design choice of the optparse author.
> >argparse accepts short options with like -f=1234
>


 I wanted to know why my sample program does not work  with short hand
option (-p) and works with long hand option .

Here is what is happening ( only short hand with -)

# python-5.py -p=/ifs/1.txt -q=XOR  -f=1234 -n=1 -l

Usage: python-5.py [options]

python-5.py: error: option -q: invalid choice: '=XOR' (choose from 'XOR',
'ADD',

 'SET', 'MODIFY', 'RENAME', 'DELETE', 'KILL')


Result :says  invalid choice: '=XOR'





Long hand Works ( -- , or double hypen ) fine.

C:\Users\bahadg\Desktop>python python-5.py --path=/ifs/1.txt
--operation=XOR  --

offset=1234 --node=1 --log --fixcrc

/ifs/1.txt
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20140226/3dbe15f6/attachment.html>


More information about the Python-list mailing list