Python:' NoneType'对象没有属性'追加'

时间:2014-03-20 06:33:09

标签: python

我的代码如下所示,用于搜索闭孔

    best_i += h.i_offset; best_i = keep_in_range(best_i, 0, b.nni-1)
    best_j += h.j_offset; best_j = keep_in_range(best_j, 0, b.nnj-1)
    best_k += h.k_offset; best_k = keep_in_range(best_k, 0, b.nnk-1)
    Block.blockList[best_block].hcell_list.append( (best_i, best_j, best_k) )

然而,有一个错误

Block.blockList[best_block].hcell_list.append( (best_i, best_j, best_k) )
AttributeError: 'NoneType' object has no attribute 'append'

有谁知道为什么?

2 个答案:

答案 0 :(得分:0)

如果Block.blockList[best_block].hcell_list为None,则使用list方法将无效。您需要弄清楚为什么它具有None然后,您可以append为列表值,您不能向None添加任何内容。

这就是我所说的缺乏你所提供的信息的所有内容,但基本上只是弄清楚你将Block.blockList[best_block].hcell_list声明为None,将其更改为列表并且它应该有效。

如果您正在使用库,请尝试打开它并弄清楚如何使用它并检查它应具有的值类型。

答案 1 :(得分:0)

如果您打算调用Block.blockList[best_block].hcell_list方法,

append不应为无 append是一种列表数据类型的方法 请确保您的代码正在传递Block.blockList[best_block].hcell_list列表。