这与我今天早些时候提出的问题("List" Object Not Callable, Syntax Error for Text-Based RPG)相关联。现在我的困境在于将药草添加到玩家的药草列表中。你知道吗
self.herb = []
是开始的药草清单。功能包括:
def collectPlants(self):
if self.state == 'normal':
print"%s spends an hour looking for medicinal plants." % self.name
if random.choice([0,1]):
foundHerb = random.choice(herb_dict)
print "You find some %s." % foundHerb[0]
self.herb.append(foundHerb)
print foundHerb
else: print"%s doesn't find anything useful." % self.name
因为foundHerb是随机选择。如何将此项以整洁的方式添加到列表中(当前打印药草名称,然后打印“无”),并允许具有多个相同的药草?你知道吗
这是药草课:
class herb:
def __init__(self, name, effect):
self.name = name
self.effect = effect
草药样品清单(警告:不成熟):
herb_dict = [
("Aloe Vera", Player().health = Player().health + 2),
("Cannabis", Player().state = 'high'),
("Ergot", Player().state = 'tripping')
]
在函数中,考虑如果
random.choice([0,1])
是0
,会发生什么。它不会运行if
块,因此不会选择任何药草。也许在你的功能中,你可以return False
说没有发现草药。然后你可以这样做:使用列表。你知道吗
编辑:我在你的另一个问题中找到了
foundHerb
的代码(请在这个问题中也发布!),即:当我看
herb_dict
:=
进行赋值。==
用于测试相等性。你知道吗不要将第二项添加到列表中。像这样:
相关问题 更多 >
编程相关推荐