当前位置: 首页 > 面试题库 >

Python:AttributeError:'NoneType'对象没有属性'append'

花烨
2023-03-14
问题内容

我的程序看起来像

# global
item_to_bucket_list_map = {}

def fill_item_bucket_map(items, buckets):
    global item_to_bucket_list_map

    for i in range(1, items + 1):
        j = 1
        while i * j <= buckets:
            if j == 1:
                item_to_bucket_list_map[i] = [j]
            else:
                item_to_bucket_list_map[i] = (item_to_bucket_list_map.get(i)).append(j)
            j += 1
        print "Item=%s, bucket=%s" % (i, item_to_bucket_list_map.get(i))


if __name__ == "__main__":
    buckets = 100
    items = 100
    fill_item_bucket_map(items, buckets)

当我运行它时,它会抛出我

AttributeError: 'NoneType' object has no attribute 'append'

不知道为什么会这样?当我已经在每个列表的开头创建列表时j


问题答案:

实际上,您存储None在此处: append()更改列表并返回None

 item_to_bucket_list_map[i] = (item_to_bucket_list_map.get(i)).append(j)

例:

In [42]: lis = [1,2,3]

In [43]: print lis.append(4)
None

In [44]: lis
Out[44]: [1, 2, 3, 4]


 类似资料:
  • 问题内容: 我有一个文本文件,我们称之为它,我想加载它并创建一个包含文本文件中每一行的列表。 我尝试使用这样的过程: 为什么会出现这些错误?那不是我的用法吗?(我正在使用) 问题答案: 您正在打开文件对象上使用方法。 您可以通过简单地调用文件对象来将文件读取为行列表: 这 确实 包括换行符。您可以剥离列表理解中的那些:

  • 如果pk_col值为空,则应打印未定义的主键。但我得到了这个错误。“NoneType”对象没有属性“rdd”。

  • 问题内容: 下面的代码给出了错误: 码: 问题答案: 从代码中,我可以看到你希望允许用户下载pdf。 现在开始 去 http://localhost:5000

  • 问题内容: 我遇到了这个问题,我不明白为什么。 我从我的应用程序中获取了代码,并制作了此测试代码,因此您不必费劲地查看我的要求。 我有这个工作在其他代码。但是,在将两者进行比较之后,我无法为自己的一生解决这个问题。 在此应用程序中,出现错误“ AttributeError:’NoneType’对象没有属性’delete’”。 问题答案: 在这一行: grid不返回任何内容,因此entryBox是,

  • 我的模型在Slagify系列中有问题 我试着把代码self.slug=slugify(“slug的测试”)放进去,但问题仍然存在,但当他说保留信息时,没有问题 这是我的错误: 环境: 请求方式:POST请求URL:http://xxx.xx.xx.xx:8000/admin/pages/pages/add/ Django版本:1.7.1 Python版本:3.4.2安装的应用程序:('Django

  • 我遵循项目中给出的所有指示 代码是main.py