根据python中元组的第二部分从元组列表中删除

sia*_*sia 3 python

contacts.remove((name,ip))

我有ip,它是独一无二的.我想根据ip从联系人中删除这个元组,而不需要命名.

我刚试过这个contacts.remove((pass,ip)),但是我遇到了一个错误.

Joh*_*hin 11

contacts = [(name, ip) for name, ip in contacts if ip != removable_ip]
Run Code Online (Sandbox Code Playgroud)

要么

for x in xrange(len(contacts) - 1, -1, -1):
    if contacts[x][1] == removable_ip:
        del contacts[x]
        break # removable_ip is allegedly unique
Run Code Online (Sandbox Code Playgroud)

第一种方法重新绑定contacts到新创建的列表,该列表排除了所需的条目.第二种方法更新原始列表; 它向后移动,以避免被del脚下移动地毯的声明绊倒.