我正在尝试使用简写if (rstudio) rstudio::viewer(tempfile) else browseURL(tempfile)
控制我的日志,因为它在单行中看起来很优雅,但我注意到我还需要实现if-else
流程。
else
如果我将Class MyClass(object):
def __init__(self, parent):
self.log_enabled = False # To enable/disable logs
...
def test(self):
...
print "Command is being executed..." if self.log_enabled == True else pass
...
放在pass
,那么这是一个错误。有没有办法干净地实现这个,使用else
或其他方法?
答案 0 :(得分:2)
你告诉它要打印什么。 pass
不是您可以打印的内容。但是,您可以打印空字符串。
print "Command is being executed..." if self.log_enabled else '',
然而,看起来你只是想把一个三元运算符塞进你的代码中,这样的策略会让你的代码明显变差。只需使用传统结构:
if self.log_enabled:
print "Command is being executed..."
答案 1 :(得分:1)
def log_it(self, message, *args):
if self.log_enabled:
print message % args
def test(self):
log_it("Command is being executed...")
log_it("A number less than 3 and greater than 1 is %d", 2)
但是如果这是一个非平凡的项目,你应该只使用常规的python日志记录类。