python - Python/Mesa 中的属性错误:“MyAgent”对象没有属性“名称”
问题描述
我正在尝试完成 Mesa 教程(https://media.readthedocs.org/pdf/mesa/latest/mesa.pdf)并且遇到重复的属性错误。
我刚刚尝试了这段代码(与教程中打印的完全一样):
import random
from mesa import Agent, Model
from mesa.time import RandomActivation
from mesa.space import MultiGrid
class MyAgent(Agent):
def __init__(self, name, model):
super().__init__(name, model)
def step(self):
print("{} activated".format(self.name))
class MyModel(Model):
def __init__(self, n_agents):
self.schedule = RandomActivation(self)
self.grid = MultiGrid(10, 10, torus=True)
for i in range(n_agents):
a = MyAgent(i, self)
self.schedule.add(a)
coords = (random.randrange(0, 10), random.randrange(0, 10))
self.grid.place_agent(a, coords)
def step(self):
self.schedule.step()
我像这样运行它:
model = MyModel(5)
model.step()
并最终得到以下错误: Traceback(最近一次通话):
文件“”,第 2 行,在 model.step()
文件“”,第 11 行,步骤 self.schedule.step()
文件“/anaconda3/lib/python3.6/site-packages/mesa/time.py”,第 113 行,步骤 agent.step()
文件“”,第 5 行,步骤 print("{} 已激活".format(self.name))
AttributeError:“MyAgent”对象没有属性“名称”
我查看了许多处理属性错误的帖子,但似乎没有一个适用于这里发生的任何事情。有什么建议么?
谢谢!
解决方案
推荐阅读
- java - 在 Eclipse 中使用 hibernate cfg、xml 在 mysql 中创建新表时出错
- javascript - 如何将 [object%20MouseEvent] 转换为字符串?
- reactjs - 如何为数组中的每个图标添加样式对象?(反应/材料-ui)
- python - 定义从类继承的类时出错
- javascript - 将 $.each 转换为纯 JavaScript?
- c++ - 我在 C++ 语法中找不到语法产生式“初始化程序”的初始化程序`()`
- c# - 无法反序列化当前的 json 对象 当我尝试将以下 Json 数据读入对象时显示消息
- swift - 在 Swift 的 If 语句中设置 @State var
- python - 使用变量 python 3 调用字典名称
- php - 如何修复此“未定义索引:post_type”错误?