0

所以我仍在编码,甚至不确定这是否一切正常,但是当我什至无法运行时很难测试它。这是我第一次尝试使用多个可选输入,每次运行时都会出现错误:

“命令行参数错误:参数“查询”。文件不可访问:`sequence_filename'”

命令行输入是文件名 (require),然后是函数将运行的可选输出文件,然后是 prot(如果是蛋白质,则默认)或 na(如果是核酸)的可选变量

if __name__ == '__main__':
    sequence_filename = sys.argv[1]
    output_filename = ''
    if sys.argv > 3:
        output_filename = sys.argv[2]
        if sys.argv[3] == 'na':
            input = 'na'
        else:
            input = 'prot'
    elif sys.argv > 2:
        output_filename = sys.argv[2]

    main( sequence_filename, output_filename, input )

提前致谢。

4

1 回答 1

4

如果你在做复杂的命令行界面,你应该使用argparse,它会根据你指定的参数自动解析并生成界面。

如果您运行的是 python 2.6 或更早版本,则可以使用.optparse替换为argparse.

于 2012-10-16T18:15:33.030 回答