python3如何才能实现在for循环里动态删除元素?

RUSSIAVK
  • 33

使用for循环一个二维数组,每个元素是一对用户名密码形式如[['admin',123],['admin',1234],...]
以爆破一批帐号
比如admin这个帐号错误超过5次就冻结无法再登录了,于是应该将剩下的所有用户名以admin的去除。
我在循环里用filter函数把冻结的帐号去除并将此二维数组重新赋值,但好像不起作用,求解???

去除的函数如下:

self.CrackQueue=list(filter(lambda x:x[0]=='admin',self.CrackQueue))
回复
阅读 1.6k
2 个回答

filter 是正向过滤,所以去除 admin 你要这样写lambda x:x[0]!='admin'

另外说一下,我觉得更好的的数据结构是 {'admin':[123, 1234, ...], 'user':[...]}

再初始化一个list用于存放需要废弃的用户名,每次循环的时候检查下是否在这个list内,是的话就直接continue

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏