代碼如下,為什么if里面的print不能輸出呢,這段代碼一直有IndexError錯誤,有什么好的辦法避免嗎
# 30 個人在一條船上,超載,需要 15 人下船。
# 于是人們排成一隊,排隊的位置即為他們的編號。
# 報數,從 1 開始,數到 9 的人下船。
# 如此回圈,直到船上僅剩 15 人為止,問都有哪些編號的人下船了呢?
life_num=[a+1 for a in range(30)] #生成編號序列
# print(life_num)
j=1
while True:
if len(life_num) <= 15:
print(life_num)
break
else:
for n in range(len(life_num)):
if j==9:
print('%a號下船!'%life_num[n])
life_num.remove(life_num[n])
j = 2
else:
j+=1
uj5u.com熱心網友回復:
life_num=[a+1 for a in range(30)] #生成編號序列
# print(life_num)
j=1
while True:
if len(life_num) <= 15:
print(life_num)
break
else:
for n in range(len(life_num)):
if j==9:
try:
if len(life_num) <= 15:
break
print('%a號下船!'%life_num[n])
life_num.remove(life_num[n])
j = 2
except Exception as e:
pass
else:
j+=1
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/120458.html
標籤:其他開發語言
上一篇:求教
