【问题标题】:AttributeError: 'int' object has no attribute 'append'AttributeError: 'int' 对象没有属性 'append'
【发布时间】:2018-03-17 13:59:19
【问题描述】:

我是编码新手,这是我的代码有问题的部分:

d = [1, 2]
c = 8
list = [5,6,7]
for i in range (len(list)):
        d.append (list[i])
        d = sum(d)*c

但总是有一个错误'int'对象没有属性'append',我不知道怎么了

【问题讨论】:

  • 这段代码 sn -p 应该做什么?
  • 你为什么要做d = sum(d)*c,尤其是在循环内?您希望d 成为列表还是数字?
  • 第一次迭代后,您将拥有dsum,下一次d 将是int 值

标签: python list int append


【解决方案1】:

您正在循环中将列表转换为整数:

d = [1, 2] # here d is a list
c = 8
my_list = [5,6,7]
for i in range (len(list)):
        d.append (my_list[i])
        d = sum(d)*c #now you've made it an integer

您的循环运行一次,但在第二次尝试时失败,因为您将现在的整数变量 d 视为仍然是一个列表。

【讨论】:

  • 覆盖list之类的python关键字通常是个坏主意。
猜你喜欢
  • 2019-03-31
  • 2018-06-22
  • 2015-08-16
  • 2017-08-14
  • 2015-03-08
  • 2015-02-17
  • 2013-11-05
  • 2020-05-31
  • 2021-11-30
相关资源
最近更新 更多