问题标题:
Python高手来,我新定义一个函数,求a+绝对值b,但是我用他的时候,他给了一个错误,>>>fromoperatorimportadd,sub>>>defa_plus_abs_b(a,b):x05ifb>=0:x05op=a+bx05else:x05op=a-bx05returnop(a,b)>>>a_plus_abs_b(1,2)Traceb
问题描述:
Python高手来,我新定义一个函数,求a+绝对值b,但是我用他的时候,他给了一个错误,
>>>fromoperatorimportadd,sub
>>>defa_plus_abs_b(a,b):
x05ifb>=0:
x05op=a+b
x05else:
x05op=a-b
x05returnop(a,b)
>>>a_plus_abs_b(1,2)
Traceback(mostrecentcalllast):
File"",line1,in
a_plus_abs_b(1,2)
File"",line6,ina_plus_abs_b
returnop(a,b)
TypeError:'int'objectisnotcallable
>>>
郝峰回答:
注意无论是执行了op=a+b还是op=a-b
op都是一个int型的数据类型,而你用returnop(a,b)则是在调用op这个方法obj,整形数据是不支持被当做方法来调用的
点击显示
其它推荐