python删除指定元素 多个_Python List remove()删除多个元素

所以我有一个python机器人,其中有两个团队,有一个scramble调用,用来对团队进行置乱。这两支队伍各有一张单子,我得把它们打乱。(在你说使用随机洗牌之前,这在这里不起作用)

每个列表都是一个字典列表-每个元素都是一个包含用户信息的dictionary对象。(例如用户昵称、用户类别、用户禁止状态、用户获胜百分比等)

我无法改变这一点-那是我无法控制的。我想出了以下解决方案:for i in switchingClassList: #switchingClassList is already filled with random classes that will be switched

playerList = []

for j in teamA:

if j['class'][0] == i: #if the user's class matches one in switchingClassList, that user will be part of the scramble

playerList.append(j)

teamA.remove(j)

for j in teamB:

if j['class'][0] == i:

playerList.append(j)

teamB.remove(j)

#there is more after, but that part works

所以这件事起作用了。。。某种程度上。在一个团队中,有5个独特的职业,除了1个以外,其他所有职业都由一个球员承担。最后一节课不是由一名队员参加,而是由每队两名队员参加。在

如果SwitchClassList包含每个类有2个玩家的类,这个东西就会中断。在

我把错误追溯到这一行:

^{pr2}$

结果是,如果选择了包含两个玩家的类,这一行会将两个玩家从teamA列表中删除(反过来,还会从teamB列表中删除)。

但是。。。我以为python中list的remove只删除了第一个元素。我误解了功能吗?有什么可能解决这个问题?在

你可能感兴趣的:(python删除指定元素,多个)