函数calculate_attribute
不返回值;它只能通过副作用起作用。在调用另一个函数后立即返回函数
通常该函数中我不得不写这几行:
print('some message')
set_attribute(value)
return
所以我决定把这个变成一个不同的功能:
def report_and_set(value, message):
print(message)
set_attribute(value)
它是确定到现在做到以下几点:
def calculate_attribute(params):
#...
if something:
return report_and_set(value, message)
#...
if another_condition:
return report_and_set(value, message)
#...
感觉有点奇怪写这个,因为report_and_set
没有返回值。但是如果我不这样做,我必须在每次拨打report_and_set
后重复输入return
。
从技术上讲,它确实有一个返回值。如果没有返回语句,函数默认返回None。如何使用elif语句?然后你可以调用report_and_set()而不用担心使用return来退出函数。 – 2012-02-05 06:00:27
它可能是*重构时间*,但很难说不知道你的功能是什么。 – 2012-02-05 10:42:46