用Python中的if/else语句返回True和False有什么更优雅的方法



我一直收到一个错误,说"不必要";否则";在";return">

它想告诉我什么,还有什么更优雅的方式来编码这个逻辑?

for selected_node in NODES:
if pm.nodeType(selected_node) == 'file':
msg = 'correct type of nodes selected'
LOGGER_TEXTURE_SWAP.debug(msg)
return True
else:
msg = 'incorrect type of nodes selected'
LOGGER_TEXTURE_SWAP.debug(msg)
return False

我尝试重新创建代码段的逻辑,并使用最新的python 3.8.3

nodes = ['file', 'folder', 'directory']
for node in nodes:
if node == 'file':
print(node)
return True
else:
print('something else')
return False

我得到了SyntaxError:函数外的"return"。这是可以理解的,因为返回应该是函数的输出。

所以,我把它作为一个函数,如下所示。

nodes = ['file', 'folder', 'directory']
def myprogram():
for node in nodes:
if node == 'file':
print(node)
return True
else:
print('something else')
return False
myprogram()

现在我打印了"file"one_answers"True"输出。因此,python可以按预期工作。

最新更新