带有变量的add_参数在python 3.4.2 argparse中不起作用

带有变量的add_参数在python 3.4.2 argparse中不起作用,python,argparse,Python,Argparse,下面是用户故事 构建论点。独立的 parser.add_argument('-design_engineer', '-de'); $test.py -design_engineer sbir Namespace(design_engineer, _de='sbir') 用变量构建参数 column_name = 'design_engineer'; alias_n = 'de'; parser.add_argument("-" + column_name + ", " + "-" + al

下面是用户故事

  • 构建论点。独立的

    parser.add_argument('-design_engineer', '-de');
    
    $test.py -design_engineer sbir
    Namespace(design_engineer, _de='sbir')
    
  • 用变量构建参数

    column_name = 'design_engineer';
    alias_n = 'de';
    parser.add_argument("-" + column_name + ", " + "-" + alias_n);
    
    $test.py -design_engineer sbir
    Namespace(design_engineer, _de='sbir')
    

  • 您不需要在字符串中输入逗号;您仍然需要生成两个单独的字符串:

    parser.add_argument("-" + column_name, "-" + alias_n)
    

    请尝试修复问题的格式。它看起来和你的意图完全不同,这使得它很难阅读。还有,你的问题是什么?您已经做了一些陈述,但没有提出任何问题。逗号不是字符串的一部分。
    名称空间(design\u engineer,\u de='sbir')
    看起来属性名是“design\u engineer,\u de',整个字符串。通常,短选项标志类似于'-d',长'-design engineer',结果
    dest
    为“design\u engineer”。您还可以尝试显式的
    dest='dest='design\u enginerr'
    parameter.parser.add_参数('-design\u engineer','-de')$test.py-design_-engineer sbir名称空间(design_-engineer='sbir')解析器。添加参数('-design_-engineer','-de');名称空间(design_engineer,_de='sbir')列名称='design_engineer';别名_n='de';arg_var=“-”+列名称,;arg_var=arg_var+“-”+别名n,;错误:raceback(最近一次调用last):文件“/tssupdate.py”,第208行,在arg_var=(arg_var+“-”+alias_n,)中;TypeError:只能将元组(而不是“str”)连接到元组。实际上,我是从变量动态构建参数。您的值中有逗号,使它们成为元组。此外,Python不需要所有这些分号,您可以删除它们。argv_var=“-”+column_name,“-”+alias_n parser.add_参数(argv_var);删除逗号将起作用。但名称空间打印错误。最后,我的要求是从xml文件中读取参数选项。我将根据条件构建一个字符串,并将其添加到add_参数中。请帮我个忙。这听起来像是个新问题。创建另一个帖子,明确您的尝试,并为我们提供帮助。