Python :一个for循环无法实现,出现“x not in list”,菜鸟一个,请问大神怎么回事?

>>>a=[1,3,3,4,5,6,3343,52]>>>ad=[]>>>importrandom>>>foriinrange(len(a)):...print(rand... >>> a= [1, 3, 3, 4, 5, 6, 3343, 52]
>>> ad = [ ]
>>> import random
>>> for i in range(len(a)):
... print (random.choice(a))
... ad = a.remove(i)
... print (ad)
... print (a)
... a = ad
...
52

Traceback (most recent call last):
File "<stdin>", line 4, in <module>
ValueError: list.remove(x): x not in list
展开
 我来答
生活需要走位
2018-01-10 · TA获得超过361个赞
知道小有建树答主
回答量:155
采纳率:66%
帮助的人:49.1万
展开全部
a= [1, 3, 3, 4, 5, 6, 3343, 52]
ad = [ ]
import random
for i in range(len(a)):  # range(8), i = [0,1,2,3,4,5,6,7]
    print (random.choice(a))
    ad = a.remove(i)  # when i =2, i not in a, Error! 
    print (ad)
    print (a)
追问

追答

就是说 你要从一个列表里移除一个特定的元素, 但是你的列表里没有这个数.

In [3]: for i in range(8):
   ...:     print(i)
   ...:     
0
1
2
3
4
5
6
7
#比如当i = 0, 2, 7 都不在 a里面 所以,a.remove(i)的时候就出现错误了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式