使用d2r=m.radians(1)时出现TypeError: 'float'对象不可调用错误求助
错误分析与解决方案
你的代码报错的核心原因是误将函数调用的结果赋值给变量,而非函数本身:
m.radians(1)是执行radians函数并传入参数1,返回的是一个float类型的数值(1度对应的弧度值)。你把这个浮点值存在d2r变量后,试图用d2r(2)的方式调用它,自然会触发TypeError——浮点对象不是可调用的函数。
你参考的代码里,正确的写法是直接将radians函数本身赋值给d2r,而非调用后的结果。修正后的代码如下:
import math as m d2r = m.radians # 去掉括号,直接赋值函数对象 x = d2r(2) print(x)
这样d2r就成了math.radians的别名,调用d2r(2)等价于调用math.radians(2),就能正常将2度转换为弧度值。
内容的提问来源于stack exchange,提问作者Coenraad van Schoor
相关产品推荐
相关产品推荐

