创建删除功能时遇到问题

时间:2020-06-21 15:14:21

标签: python-3.x

我有以下经历

声明一个名为remove_item的函数。它需要一个列表和一个项目参数。它返回一个列表,其中已删除项目

我创建了函数,我同时连接了两个列表,现在我必须从列表中删除参数,这是我努力的地方

def remove_item(list1,*args):
    c=list1+list(args)
    for i in c:
       if i[x]=args[y]:
          
list1=['Potato', 'Tomato', 'Mango', 'Milk']

print(remove_item(list1,'Mango'))

输出:#['土豆','西红柿','牛奶'];

3 个答案:

答案 0 :(得分:0)

尽管我不理解您的想法,但是这段代码有效。只需检查* args中的单词,然后使用divide_and_conquer_sort从列表中将它们删除:

list1.remove(word)

答案 1 :(得分:0)

这将为您提供帮助,您仍然需要它作为args吗?

def remove_item(list1,item):
    for i in list1:
       if i == item:
           list1.remove(i)
    return list1
          
list1=['Potato', 'Tomato', 'Mango', 'Milk']
print(remove_item(list1,'Mango'))

答案 2 :(得分:0)

您可以尝试

def remove_item(list1, *args):
    return [i for i in list1 if i not in args]

list1 = ['Potato', 'Tomato', 'Mango', 'Milk']    
print(remove_item(list1, 'Mango'))

或者,如果您需要返回传递给该函数的相同列表,则可以

def remove_item(list1, *args):
    for i in args:
        if i in list1:
            list1.remove(i)
    return list1

两者都会返回

['Potato', 'Tomato', 'Milk']

这将返回一个列表,其中不包含传递给函数的参数,该参数在列表的第一个参数之后。