Python-'function'对象没有属性'deflPoly'

安德鲁·史密斯

尝试创建一个小脚本来测试名为polyRoots的脚本的不同部分。当我尝试使用缩小的多边形函数时,出现错误。他们对此代码并不复杂,我不确定为什么它不起作用。

import polyRoots as pr

print( "Deflation of polynomial: ")
print( pr.polyRoots.deflPoly( [20, -36, 7, 3], -5 ))

我收到以下错误:

File "C:temp.py", line 13, in <module>
print( pr.polyRoots.deflPoly( [20, -36, 7, 3], -5 ))

AttributeError: 'function' object has no attribute 'deflPoly'

polyRoots脚本是从数值方法到工程设计的书籍代码资源。如下:

## module polyRoots
''' roots = polyRoots(a).
    Uses Laguerre's method to compute all the roots of
    a[0] + a[1]*x + a[2]*x^2 +...+ a[n]*x^n = 0.
    The roots are returned in the array 'roots',
'''    
from evalPoly import *
import numpy as np
import cmath
from random import random

def polyRoots(a,tol=1.0e-12):

    def laguerre(a,tol):
        x = random()   # Starting value (random number)
        n = len(a) - 1
        for i in range(30):
            p,dp,ddp = evalPoly(a,x)
            if abs(p) < tol: return x
            g = dp/p
            h = g*g - ddp/p
            f = cmath.sqrt((n - 1)*(n*h - g*g))
            if abs(g + f) > abs(g - f): dx = n/(g + f)
            else: dx = n/(g - f)
            x = x - dx
            if abs(dx) < tol: return x
        print('Too many iterations')

    def deflPoly(a,root):  # Deflates a polynomial
        n = len(a)-1
        b = [(0.0 + 0.0j)]*n
        b[n-1] = a[n]
        for i in range(n-2,-1,-1):
            b[i] = a[i+1] + root*b[i+1]
        return b

    n = len(a) - 1
    roots = np.zeros((n),dtype=complex)
    for i in range(n):
        x = laguerre(a,tol)
        if abs(x.imag) < tol: x = x.real
        roots[i] = x
        a = deflPoly(a,x)
    return roots

不确定导致此错误的原因,因为对于每个放气请求来说,它实际上只是一行代码。请指教。

itzMEonTV

我认为他不能在函数deflPoly外部调用该函数。因为它是local范围。

例如:

def a():
    print 'a function'
    def b():
        print 'b function'

a().b()

这应该是错误的,因为函数a()返回None,即使函数的某个值a()返回,也没有attribute b

为了使用功能b(),我们必须设置一个link内部功能如

def a():
    print 'a function'
    def b():
        print 'b function'
    return b

test = a()
test()

>>>a function
>>>b function

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

AttributeError:“ function”对象在Python中没有属性“ quad”

来自分类Dev

类实例没有属性'function_name'用于在类外部传递对象-python

来自分类Dev

Python“ builtin_function_or_method”对象没有属性“ __getitem__”

来自分类Dev

查询SQLAlchemy关联表时,Python返回AttributeError(“ function”对象没有属性“ c”)

来自分类Dev

Python 3.x - AttributeError: 'function' 对象没有属性 'Kfold'

来自分类Dev

'builtin_function_or_method'对象在python中没有属性'__getitem__'错误

来自分类Dev

Python:对象没有属性

来自分类Dev

Python属性错误对象没有属性

来自分类Dev

Python属性错误对象没有属性

来自分类Dev

AttributeError: 'function' 对象没有属性 'views'

来自分类Dev

AttributeError: 'function' 对象没有属性 'urljoin'

来自分类Dev

AttributeError: 'function' 对象没有属性 'response'

来自分类Dev

Python / DJango属性错误:模型对象没有属性对象

来自分类Dev

python float对象没有属性'value'

来自分类Dev

Python的“ str”对象没有“读取”属性

来自分类Dev

Python错误-int对象没有属性

来自分类Dev

元组对象没有属性附加(python)

来自分类Dev

'tuple'对象没有属性'rstrip'python

来自分类Dev

Python-对象没有属性“ randint”

来自分类Dev

'NoneType'对象没有属性'sendall'PYTHON

来自分类Dev

Python'NoneType'对象没有属性'attrs'

来自分类Dev

python AttributeError'dict'对象没有属性

来自分类Dev

Python:“ NoneType”对象没有属性“ get”

来自分类Dev

Python:“对象没有属性”(pyTsetlinMachine)

来自分类Dev

python'str'对象没有属性'items'

来自分类Dev

Python对象没有属性错误

来自分类Dev

Python错误-int对象没有属性

来自分类Dev

Python:“ unicode”对象没有属性“ iteritems”

来自分类Dev

python'NoneType'对象没有属性'findAll'

Related 相关文章

  1. 1

    AttributeError:“ function”对象在Python中没有属性“ quad”

  2. 2

    类实例没有属性'function_name'用于在类外部传递对象-python

  3. 3

    Python“ builtin_function_or_method”对象没有属性“ __getitem__”

  4. 4

    查询SQLAlchemy关联表时,Python返回AttributeError(“ function”对象没有属性“ c”)

  5. 5

    Python 3.x - AttributeError: 'function' 对象没有属性 'Kfold'

  6. 6

    'builtin_function_or_method'对象在python中没有属性'__getitem__'错误

  7. 7

    Python:对象没有属性

  8. 8

    Python属性错误对象没有属性

  9. 9

    Python属性错误对象没有属性

  10. 10

    AttributeError: 'function' 对象没有属性 'views'

  11. 11

    AttributeError: 'function' 对象没有属性 'urljoin'

  12. 12

    AttributeError: 'function' 对象没有属性 'response'

  13. 13

    Python / DJango属性错误:模型对象没有属性对象

  14. 14

    python float对象没有属性'value'

  15. 15

    Python的“ str”对象没有“读取”属性

  16. 16

    Python错误-int对象没有属性

  17. 17

    元组对象没有属性附加(python)

  18. 18

    'tuple'对象没有属性'rstrip'python

  19. 19

    Python-对象没有属性“ randint”

  20. 20

    'NoneType'对象没有属性'sendall'PYTHON

  21. 21

    Python'NoneType'对象没有属性'attrs'

  22. 22

    python AttributeError'dict'对象没有属性

  23. 23

    Python:“ NoneType”对象没有属性“ get”

  24. 24

    Python:“对象没有属性”(pyTsetlinMachine)

  25. 25

    python'str'对象没有属性'items'

  26. 26

    Python对象没有属性错误

  27. 27

    Python错误-int对象没有属性

  28. 28

    Python:“ unicode”对象没有属性“ iteritems”

  29. 29

    python'NoneType'对象没有属性'findAll'

热门标签

归档