AttributeError系列之:AttributeError: 'tuple' object has no attribute 'shape'
翻譯:屬性錯誤,tuple對象沒有shape屬性。
這往往發(fā)生在我們對一個tuple類型數(shù)據(jù),調(diào)用成員變量shape所致(a.shape 或 a.shape[])。
所以要查看調(diào)用發(fā)生處,看看自己的數(shù)據(jù)類型是不是有錯。我們看代碼
import numpy as npa = np.zeros([5,5]) #正確使用方式: print(a) print(type(a)) print(type(a.shape)) print(a.shape) #出錯:a = tuple(a) #這段代碼將a轉(zhuǎn)換成了tuple類型print(type(a)) print(type(a.shape))#報錯 print(a.shape)#報錯仔細看代碼中注釋報錯的地方均為錯誤用法!!
相似的報錯有:
AttributeError: 'list' object has no attribute 'shape';
AttributeError: 'int' object has no attribute 'shape';
等,都是這樣的原因,大家要注意!
PS:tuple(a),類型轉(zhuǎn)換不會影響a的性質(zhì),必須要如果想保存轉(zhuǎn)換后的變量必須,誰聲明新的變量來保存,例 b = tuple(a).
b 就是 tuple型,而a類型不變。
與另一種錯誤區(qū)分:TypeError: 'tuple' object is not callable.
詳見我的另一篇博客:https://blog.csdn.net/qq_41368074/article/details/105737846
總結(jié)
以上是生活随笔為你收集整理的AttributeError系列之:AttributeError: 'tuple' object has no attribute 'shape'的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TypeError系列之:TypeErr
- 下一篇: TypeError系列之:TypeErr