0

在向所有美丽的人问好之后,

在我的代码片段下面,我试图对用户的命令行参数进行完整性检查。

我的程序应该只接受来自用户的两个参数;在节目名称旁边;否则它将为程序的使用吐出一条USAGE消息。

问题是我无法弄清楚为什么程序在提供所需数量的参数时不会继续运行?!无论有多少参数,代码都会不断返回该使用消息;即使有两个是真的;有没有想过我该怎么办?请。

## Perfome a sanity check against command-line agguments
for arg in sys.argv:
    if len(arg) != 3:
        print(f'Usage: dna.py <DNA database CSV file> <STR sequence text file>')
        sys.exit(1)
4

1 回答 1

2

我认为 for 循环不是必需的,您只需要这样的东西:

if len(sys.argv) != 3:
   print("Your usage")

您始终可以使用argparse标准模块,它可以帮助您构建用户友好的命令行程序。

于 2020-06-14T01:11:44.503 回答