运行程序时报错:
usage: main_gui_batcmm.py [-h] {Run Reset} ...
main_gui_batcmm.py: error: argument command: invalid choice: 'Run' (choose from 'Run Reset')
from gooey import Gooey, GooeyParser
@Gooey(program_name="BattCommunicate_GUI")
def gui_main():
parser = GooeyParser(description="BattCommunicate_GUI")
subs_list = parser.add_subparsers(help="cmms", dest="command")
sub_action1 = subs_list.add_parser("Run Reset")
sub_action1.add_argument("Reset Cmms",metavar="reset",default="")
args = parser.parse_args()
print(" Start print")
print(args, flush=True) # flush=true会立即把缓存内存的东西打印出来, 打印TextField内容
if __name__ == '__main__':
gui_main()
解决:问题出在这个解析的动作命名: Run Reset, 带了空格,需要去掉空格。
sub_action1 = subs_list.add_parser("Run Reset")
sub_action1 = subs_list.add_parser("Run_Reset") # 这样就可以运行正常。