Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python Argparse中的额外字符?_Python_Argparse - Fatal编程技术网

python Argparse中的额外字符?

python Argparse中的额外字符?,python,argparse,Python,Argparse,我有一个argparse函数: def argParse(): # Possible Arguments parser = argparse.ArgumentParser() parser.add_argument("-s", "--search", dest="s", help="Seach parameters") parser.add_argument("-d", "--directory", dest="d", help="Choose Directory to save data")

我有一个argparse函数:

def argParse():
# Possible Arguments
parser = argparse.ArgumentParser()

parser.add_argument("-s", "--search", dest="s", help="Seach parameters")
parser.add_argument("-d", "--directory", dest="d", help="Choose Directory to save data")
args = parser.parse_args()

params = str(args.s)
directory = str(args.d)
if params == "None":
    print("Search parameters are null, exiting program.")
    parser.print_help()
    exit(1)
if directory == "None":
    print("directory is null, storing to current working directory.")
但是,它在使用输出中增加了一个额外的国会大厦S和D?你知道怎么清理吗

usage: scan.py [-h] [-s S] [-d D]

optional arguments:
  -h, --help           show this help message and exit
  -s S, --search S     Seach parameters
  -d D, --directory D  Choose Directory to save data

我认为您正在寻找
metavar
kwarg

试试这个:

import argparse

def parse_args():
    parser = argparse.ArgumentParser()

    parser.add_argument('-s', '--search', dest='s', metavar='\b', help='Search parameters')
    args = parser.parse_args()

parse_args()
\b
是退格字符,因此它也会删除两个字符之间的空格, 与使用
相反,我认为它在初始变量名后仍会留下一个空格

python argparse_test.py-h的输出


是的,这是一个占位符,表示在
-xxx
开关后应该输入的内容。@COLDSPEED我如何消除它?为什么要这样做?你想让用户更难理解你的程序应该输入什么吗?谢谢@Jebby,我很感激!
usage: argparse_test.py [-h] [-s]

optional arguments:
  -h, --help        show this help message and exit
  -s, --search  Search parameters