Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
424 views
in Technique[技术] by (71.8m points)

argparse - How to handle ampersand as part a command line argument in python

I have a program in python 2.7 which accepts command line parameters using argparse, however if I try to enter a string containing an ampersand I lose the characters after that ampersand.

For example:

I have a simple python program just to test the input of command line arguments and simply prints out what was entered for a single command line parameter.

Essentially: print args.where

When I run the program with an argument like this:

$ python args.py -a http://www.website.com?optionone=one&numbertwo=two

The only text printed to the screen is: http://www.website.com?optionone=one

I have similar results when using sys and printIng using Argv

How can I get the full string entered?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

This is a problem with your shell. Put the argument in quotes.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...