这个python片段有什么问题?

时间:2017-06-21 11:15:36

标签: python

script.py: -

(<HTMLInputElement>document.getElementById("buttonId")).disabled = !(<HTMLInputElement>document.getElementById("buttonId")).disabled;

输出: -

    try:
        command_line = sys.argv[1].strip()
    except IndexError:
        print "\n***PLEASE READ THE HEADER NOTE FOR RUNNING THIS PROGRAM***\n"
        exit(1)

    if command_line != "run" or command_line != "fullrun":
        print "\n***WRONG INPUT, PLEASE READ THE HEADER NOTE FOR RUNNING THIS\
 PROGRAM***\n"
        exit(1)

比较或条件有什么问题?

2 个答案:

答案 0 :(得分:5)

你的布尔逻辑错误了。使用and

if command_line != "run" and command_line != "fullrun":

您说如果用户未输入run ,则他们未输入fullrun,则该命令错误。但是,如果我输入run,我没有输入fullrun,反之亦然,请将中的一个条件设为

您可能希望使用not in和设置代替:

if command_line not in {"run", "fullrun"}:

这更具可读性。

答案 1 :(得分:1)

  

如果command_line!=“run”和command_line!=“fullrun”:

会更好! : - )

您正在使用或者在这种情况下,任何一种情况都将成立。

另外,我建议你看一下argparse模块,它可以帮助你制作精美的参数处理和帮助摘要。

https://docs.python.org/2/library/argparse.html#module-argparse