我工作的一個Python擴展模塊上,我的小測試腳本的人在做一些奇怪的事情,即:爲什麼在循環時會出現TypeError?
x_max, y_max, z_max = m.size
for x in xrange(x_max):
for y in xrange(y_max):
for z in xrange(z_max):
#do my stuff
什麼是沒有意義的是,循環到達第一結束「 z'迭代,然後拋出一個TypeError,指出「需要一個整數」。如果我嘗試......除了TypeError,並檢查x,y和z的類型,它們都會返回爲<類型'int'>。
我在這裏錯過了什麼嗎?
編輯:它出現我在我的擴展代碼中的某處出現問題。一條一條地拔出這些線條揭示了罪魁禍首。我懷疑引用計數錯誤。感謝您的回覆。
什麼是'm.size'? – Seth 2010-04-21 18:33:10
'#做我的東西'重新分配'z_max'嗎?雖然你沒有正確地向我們展示回溯,但似乎問題出在'_max'變量之一 - 而不是你檢查的三個單字母變量! - ) – 2010-04-21 18:37:01
爲什麼不使用'range( )'列表太長了嗎? – corn3lius 2010-04-21 18:42:39