我正在尝试制作一款简单的RPG游戏。我有一个将在游戏中的人员列表,并希望为每个人创建一个角色。
people = ['Mike','Tom']
class Character(object):
def __init__(self,name):
self.name = name
self.health = '100'
for x in people:
[x] = Character(x) # This is where I don't know what to do / if it's possible
这样我可以轻松地调用角色
for x in people:
print ("%s: %s health" % (people[x].name, people[x].health))
这样的事情是否可能,或者我是否会这样做?我读了How do I create a variable number of variables?,但似乎字典是他们问题的最终解决方案,而且我不知道在这种情况下它是如何工作的。
答案 0 :(得分:1)
看起来您只想保留一个Character对象列表。一旦你有了people
,你就不需要引用{。}}。
characters = [Character(person) for person in people]
然后,打印角色统计:
for c in characters:
print ("%s: %s health" % (c.name, c.health))