【问题标题】:Python finding a curve LengthPython找到曲线长度
【发布时间】:2016-12-15 23:28:11
【问题描述】:

我需要使用 3 个不同的目标函数(如下)和我定义为 findLength 的函数来查找曲线长度。我跑了一遍,我找不到任何数字,谁能告诉我这段代码出了什么问题,我对 python 很陌生,这是为了学校作业

def showLength(targetFunc, minPoints, maxPoints):
    while minPoints <= maxPoints:
       x_ = (targetFunc(minPoints)[0][0])
       y_ = (targetFunc(minPoints)[1])
       length = findLength(x_, y_)

       print('Length of the curve of the function %s ' % targetFunc.__name__)
       print("#POINTS       LENGTHS")
       print(" %f              %.4d" % (minPoints, length )  )

       minPoints = minPoints * 2 


def findLength(xs,ys):
    xVal = np.array(xs)
    yVal = np.ndarray(ys)
    length = np.sqrt((xVal - (xVal-1))**2 + (yVal - (yVal - 1))**2 )
    return length


def xSinx(numPoints):
    MIN = -20
    MAX = 20
    xValues = np.linspace(MIN, MAX, numPoints)
    yValues = xValues * np.sin(xValues)

    return xValues, yValues


def halfCircle(numPoints):
    MIN = -5
    MAX = 5
    xValues = np.linspace(MIN, MAX, numPoints)
    yValues = np.sqrt(25 - xValues ** 2)

    return xValues, yValues


def fractionalPowers(numPoints):
    assert type(numPoints) is int and numPoints > 1, "invalid numPoints"
    MIN = 0
    MAX = 100
    xValues = np.linspace(MIN, MAX, numPoints)
    yValues = np.array(xValues**0.25 + (xValues**(1/3)) + np.sqrt(xValues))

    return xValues, yValues

【问题讨论】:

  • 你定义了函数但你不执行它们。

标签: python variable-assignment curve


【解决方案1】:

我不确定您是如何运行代码的,但如果您只是按照列出的方式运行脚本,您将不会得到任何结果。您的脚本定义了一堆函数,但没有调用它们。

要运行findLength(),您可以在脚本底部添加以下内容:

xdata = [0, 1, 2]
ydata = [3, 2, 6]

result = findLength(xdata, ydata)

print "The result is: %d" % result

或者更好:

if __name__ == "__main__":
    xdata = [0, 1, 2]
    ydata = [3, 2, 6]

    result = findLength(xdata, ydata)

    print "The result is: %d" % result

【讨论】:

  • 你应该问但你不明白问题
  • @eyllanesc:我的理解是 tkim 是在问一个关于如何运行 Python 代码的问题。我在回答中解决了这个问题(而不是为他/她解决他/她的问题)。你能解释一下为什么你觉得我不明白原来的问题吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多