我正在尝试运行第二页上显示的代码:
在代码的底部,您必须添加以下行:
simFlips(100,100)
show()
以下是我在ubuntu上运行时出现的错误:
Traceback (most recent call last):
File "coin.py", line 36, in <module>
simFlips(100,100)
File "coin.py", line 16, in simFlips
diffs.append(abs(heads - tails))
AttributeError: 'numpy.ndarray' object has no attribute 'append'
请告诉我我做错了什么给了我最后一个错误。提前谢谢!
答案 0 :(得分:23)
使用numpy.concatenate(list1 , list2)
或numpy.append()
查看Append a NumPy array to a NumPy array处的帖子。
答案 1 :(得分:0)
更改程序中的循环后出现此错误,让我们看看:
for ...
for ...
x_batch.append(one_hot(int_word, vocab_size))
y_batch.append(one_hot(int_nb, vocab_size, value))
...
...
if ...
x_batch = np.asarray(x_batch)
y_batch = np.asarray(y_batch)
...
事实上,我在重用变量,却忘记在外部循环中重置它们,就像约翰·里昂的评论一样:
for ...
x_batch = []
y_batch = []
for ...
x_batch.append(one_hot(int_word, vocab_size))
y_batch.append(one_hot(int_nb, vocab_size, value))
...
...
if ...
x_batch = np.asarray(x_batch)
y_batch = np.asarray(y_batch)
...
然后,检查您是否正在使用np.asarray()或类似的东西。