【问题标题】:Attribute Error in pythonpython中的属性错误
【发布时间】:2013-10-20 23:56:37
【问题描述】:

我收到以下代码的属性错误:

coininfo = [ {} for k in range(0,numberOftrials)]

coininfo[i].append([x,outcome(x)])

以下是我得到的确切错误屏幕:

Traceback (most recent call last):
   File "pr1.py", line 22, in <module>
runsimulation(numberOftrials,numberOfcoins)
  File "pr1.py", line 19, in runsimulation
coininfo[i].append([x,outcome(x)])
AttributeError: 'dict' object has no attribute 'append'

感谢任何帮助!

【问题讨论】:

  • 为什么你可以 append() 到一个字典? append() 显然是一个列表方法,而不是一个字典方法。
  • @user2799617:由于我对 python 很陌生,我不知道有两种方法(list 和 dict)。我只是按照类似线程中给出的说明进行操作!下次我会更小心的!

标签: python object dictionary attributeerror


【解决方案1】:

当你跑步时

coininfo = [ {} for k in range(0,numberOftrials)]

您最终会得到一个字典数组,而不是数组数组。因此coininfo[i] 是一个字典,你不能附加到它上面。

我的猜测是您想将第一行更改为

coininfo = [ [] for k in range(0,numberOftrials)]

因此您将拥有一个数组数组。或者,如果你的意思是你的输出是一个字典数组,你可能意味着有

coininfo[i][x] = outcome(x)

而不是

coininfo[i].append([x,outcome(x)])

【讨论】:

    猜你喜欢
    • 2014-03-21
    • 2013-07-01
    • 2011-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-01
    相关资源
    最近更新 更多