什么是一个标准的方式来做一个没有操作Python?

我经常发现自己编写的if / elif / else在python中的结构,我想包括可能发生的选项,但相应的行动是什么都不做。 我意识到我可以将这些if语句排除在外,但为了便于阅读,我发现将所有这些语句都包含在内,这样如果您仔细查看代码,就可以看到每个选项的结果。 我如何编码无操作? 目前,我正在这样做:

no_op = 0 if x == 0: y = 2 * a elif x == 1: z = 3 * b elif x == 3: no_op 

(代码实际上比这个更长,而且更复杂,这只是为了说明结构)。

我不喜欢使用variables作为无操作,但它是我能想到的最好的方式。 有没有更好的办法?

使用pass for no-op:

 if x == 0: pass else: print "x not equal 0" 

还有另一个例子:

 def f(): pass 

要么:

 class c: pass 

pass怎么样?

有关pass命令的参考资料,请参阅: http : //www.network-theory.co.uk/docs/pytut/passStatements.html

如果你需要一个performance为nop的函数,试试

 nop = lambda:None nop() 

有时候我在做可选的依赖关系时会这样做:

 try: import foo bar=foo.bar baz=foo.baz except: bar=nop baz=nop # Doesn't break when foo is missing: bar() baz()