我定义了 三个subs.add_parser,例如my_cool_parser = subs.add_parser('test1'), 如果我在每个subs.add_parser中加入一行args = parser.parse_args(),原来程序主界面中的三个Actions就没有了,这是为什么?如何解决?谢谢!
附部分代码
subs = parser.add_subparsers(help='commands', dest='command')
my_cool_parser = subs.add_parser('test1')
my_cool_parser.add_argument('s',type=str,help='分类或回归',choices=['1','2'],default='1')
my_cool_parser.add_argument('path4', widget='FileChooser', help="选择数据")
args = parser.parse_args()
if args.s == '3':
command = path0 + ' '+path1 + ' '+path2 + ' '+path3 + ' '+args.path4+ ' '
else:
command = path + ' '+path1 + ' '+path2 + ' '+path3 + ' '+args.path4+ ' '
Actions只能使用一个,不能同时使用多个Action下的参数
import argparse
from gooey import Gooey,GooeyParser
import os
@Gooey(encoding='utf-8',program_name='test',program_description='测试',language='chinese')
def main():
parser = GooeyParser()
subs = parser.add_subparsers(help='commands', dest='command')
parser_a = subs.add_parser('add', help='add help')
parser_a.add_argument('-x', type=int, help='x value')
parser_a.add_argument('-y', type=int, help='y value')
parser_s = subs.add_parser('sub', help='sub help')
parser_s.add_argument('-x', type=int, help='x value')
parser_s.add_argument('-y', type=int, help='y value')
args = parser.parse_args()
print(args.command)
print(args.x)
print(args.y)
main()
if args.s == '3':
command = path0 + ' '+path1 + ' '+path2 + ' '+path3 + ' '+args.path4+ ' '
else:
command = path + ' '+path1 + ' '+path2 + ' '+path3 + ' '+args.path4+ ' '
这个语句能够加上吗?如果这个加上后还是有两个Actions就可以了。
在第一个subs后面,需要加入一个if语句执行不同的命令行。
能否这样,
args = parser.parse_args()
if args.s == '3':
command = path0 + ' '+args.path2+ ' '
command = path1 + ' '+args.path2+ ' '
哪些是Actions下参数? 我这种情况怎么处理?谢谢!
这个问题目前还是没有解决,请问如何解决?