什么是TypeError: 'type' 对象不可下标?

问题描述 投票:0回答:1
for j in range(640):
        for i in range(400):
            # nimg[j][i] = resam(img, x, y)
            K2 = K/2
            sum = 0.0
            a = -K2
            for s in range[a,K2+1, 1]:
                for t in range[a,K2+1, 1]:
                    sum += resam(img,x+(K2*d), y+(K2*d))
                    nimg[j][i] = int(sum/(K*K))

错误。

Traceback (most recent call last):
  File "PyIP2.py", line 56, in <module>
    resize(img,nimg)
  File "PyIP2.py", line 29, in resize
    for s in range[a,K2, 1]:
TypeError: 'type' object is not subscriptable

我不明白同样的问题有什么解决办法?

python arrays new-operator
1个回答
2
投票

你犯的错误是用[](方括号)代替了()(曲线括号)

解决方法很简单。

for j in range(640):
    for i in range(400):
        # nimg[j][i] = resam(img, x, y)
        K2 = K/2
        sum = 0.0
        a = -K2
        for s in range(a,K2+1, 1):
            for t in range(a,K2+1, 1):
                sum += resam(img,x+(K2*d), y+(K2*d))
                nimg[j][i] = int(sum/(K*K))
© www.soinside.com 2019 - 2024. All rights reserved.