我要删除用户提供的名称所在的整个列表
import taskk
agenda = []
count = 0
while True:
print('---MENU---')
print('Register- 1 / Remove - 2')
option= int(input())
if option== 1:
name= input('Name:')
wpp = int(input('Number: '))
email = input('Digite o email: ')
contact= [name,wpp,email]
agenda.append(contact)
count +=1
if option == 2:
name = input('Who do you want to remove? ')
agenda.append(name)
if count == 2:
break
我想做这样的事情,从名称中获取索引并添加1以删除名称,wpp和电子邮件。我知道这是错误的,但是我认为我可以做类似的事情
def remove(name, agenda = []):
for registro in agenda:
registro1 = agenda.index(name)
registro2 = agenda.index(name+ 1)
registro3 = agenda.index(name + 2)
agenda.pop(registro1, registro2, registro3)
return agenda
return
答案 0 :(得分:0)
尝试一下:
def delete_contact(agenda, name):
for contact in agenda[:]:
if contact[0] == name:
agenda.remove(contact)
,议程列表将被更新,而无需返回任何内容。
答案 1 :(得分:0)
我假设您的议程将包含一个子列表,该子列表是“ [name,wpp,email]”,那么当您要删除该列表时,您只需找到name = name_to_remove的子列表并将其删除即可。
def remove(name, agenda):
return [elem for elem in agenda if elem[0] != name]