Python ... sys.argv中的“if false”:这是什么意思?

时间:2016-04-05 23:51:46

标签: python if-statement

我在python脚本中看过这行,但我不明白。这是什么意思?

if False or '--epson' in sys.argv:

2 个答案:

答案 0 :(得分:3)

Python没有多行注释,因此一些程序员使用的是将if False:放在他们想要禁用以进行测试的代码块之前。要重新启用块,他们会将其更改回“True”。

在你的情况下,这可能已经是一个if语句,所以他们这样设置它们就可以禁用整个块:

print "Hello world!"
if False: # or "--epson" in sys.argv
    print "Do something fancy with the --epson flag."
    print "Disable me if you're testing!"
    print "And me."
    print "Whoops, me too. Wow, that's a lot of single-line comments."
print "That's it, goodbye."

这通常是一种不好的做法,因为禁用此块并不是很明显。最好使用一个编辑器,以便一次评论/取消注释多行。

答案 1 :(得分:2)

if A or B

在这种情况下A = False ...始终为False

和B = "--epson" in sys.argv这将是真的IFF --epson在sys.argv

...你可以将其重写为

if "--epson" in sys.argv: