gpt4 book ai didi

python - 为什么我的用户定义函数的 'int' 对象不可调用?

转载 作者:行者123 更新时间:2023-12-01 07:16:02 24 4
gpt4 key购买 nike

我创建了一个用户定义的函数,但在尝试打印时不断收到错误消息“TypeError: 'int' object is not callable”

import math
def rangeeee(x, ang, vo, yo):
fl=(yo+x*math.tan(math.radians(ang))-(1/(2*vo*vo))*((9.8*x*x)/(math.cos**2(math.radians(ang)))))
return fl

print(rangeeee(1,2,3,4))

最佳答案

math.cos() 使用不当:

  • math.cos(math.radians(ang))**2 而不是 (math.cos**2(math.radians(ang)))
    • 注意 math.cos()()math.radians(ang) 的位置
    • enter image description here
    • enter image description here
    • enter image description here
def range_e(x: float, ang: float, vo: float, yo: float) -> float:
return (yo +
x * math.tan(math.radians(ang)) -
(1 / (2 * vo**2)) *
((9.8 * x**2) / math.cos(math.radians(ang))**2))

print(range_e(1,2,3,4))

>>> 3.489812396747827
  • 该功能已更新为 Type annotations (例如 range_e(x: float, ang: float, vo: float, yo: float) -> float:)
  • 为了便于阅读,方程已分成不同的行
  • 该函数已重命名为 range_e,因为它比 rangeeee 更简单,并且 range 会覆盖 built-in python function
  • 可以返回方程,而无需将其分配给f1

关于python - 为什么我的用户定义函数的 'int' 对象不可调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57940767/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com