【发布时间】:2020-01-23 14:10:58
【问题描述】:
在下面的例子中,force 应该改变double 函数的参数x 的值。 ValidateAndCast 检查给定的参数并将其强制转换。所以在这种情况下,force返回后,x应该是2,因此double的返回值应该是4。假设所有的修改都是在force函数中完成的。
我如何实现这一目标?到目前为止,我已经查看了inspect,并将继续学习。
def is_number(x):
try:
float(x)
return True
except:
return False
def to_int(x):
return int(float(x))
def double(x):
force(x=ValidateAndCast(is_number, to_int))
return x * 2
x = '2.54'
y = double(x)
print(y)
【问题讨论】:
-
你为什么不把“演员”的结果再次分配给
x?
标签: python-3.x parameters arguments frame inspect