如果我有代码:
attRoll = 34
hit = False
dmg = 1
attSequence = [attRoll, hit, dmg]
print attSequence[dmg]
它打印命中(假)的值而不是 dmg(1),我可以通过输入来解决这个问题:
print attSequence[dmg+1]
我的问题:-
为什么不打印 dmg 的值?
- 有没有一种干净的方法(没有+1)来检索命中的值?
谢谢!
attSequence
是一个列表,并且dmg
是 1,所以attSequence[1]
意思是“给我索引 1 处的项目(第二个项目)attSequence
”。对于您正在做的事情,您可能需要一个字典(通常在其他语言中称为映射),它存储键/值映射,因此您可以使用“dmg”键存储损坏:
att = {
"roll": attRoll,
"hit": hit,
"dmg": dmg
}
print att["dmg"]
您还可以将文字放在地图中,因此您可以这样做:
att = {
"roll": 34,
"hit": False,
"dmg": 1
}