Python 为什么不是';我的If语句是否停止此索引错误?
对于python和一般编程来说都是非常陌生的,我不断地得到这个索引错误,并且不知道为什么 我试图建立一个骰子游戏的基本模拟,我已经尝试添加if语句和while循环,这样如果列表是空的,它就不会尝试添加东西Python 为什么不是';我的If语句是否停止此索引错误?,python,indexing,Python,Indexing,对于python和一般编程来说都是非常陌生的,我不断地得到这个索引错误,并且不知道为什么 我试图建立一个骰子游戏的基本模拟,我已经尝试添加if语句和while循环,这样如果列表是空的,它就不会尝试添加东西 if dice > 0: if 0 <= (len(roll)): while roll [0] <= (always_keep): keeps.append(roll.pop(0)) else: pass if (len(r
if dice > 0:
if 0 <= (len(roll)):
while roll [0] <= (always_keep):
keeps.append(roll.pop(0))
else:
pass
if (len(roll)) == (dice):
keeps.append(roll.pop(0))
dice = (dice - 1)
else:
pass
如果骰子>0:
如果0请使用一致的缩进,因为您的else
用于while
,而不是if
,这很可能不是您想要的,而且else:pass
看起来毫无意义
问题是while
循环体将pop()
pingroll
保持为零,因此您需要:
while roll and roll[0] <= always_keep:
边滚边滚[0]什么是滚
?请把全部代码都贴出来。