我在列表中有列表,我想删除列表中重复出现的元素:
one = [['apple','pear','bear'],['apple','drawers','bear','grapes']]
我想从列表one
中的所有列表中删除“apple”。简而言之,我的目标是从所有嵌套列表中删除一个元素“apple”。
new_one = [['pear','bear'],['drawers','bear','grapes']]
我该怎么做?
答案 0 :(得分:2)
newList = [[element for element in sublist if element != "apple"] for sublist in one]
答案 1 :(得分:0)
这个怎么样:
[ a, b ] = one
return [ [ x for x in a if x not in b ], [ x for x in b if x not in a ] ]
答案 2 :(得分:0)
你也可以试试这个:
for(var x=0;x<one.length;x++) {
one[x].splice(one[x].indexOf('apple'), 1);
}
答案 3 :(得分:0)
one = [['apple','pear','bear'],['apple','drawers','bear','grapes']]
new_one = [element.remove('apple') for element in one]
# new_one = [['pear','bear'],['drawers','bear','grapes']]
如果列表列表中的任何给定列表仅包含“apple”一次,则此方法有效。如果它出现多次,它只会删除第一个'apple'。
我想从列表中的所有列表中删除“apple”。简而言之,我的目标是从所有嵌套列表中删除一个元素“apple”。
one = [['apple','pear','bear'],['apple','drawers','bear','grapes', 'apple']]
new_one = [element.remove('apple') for element in one]
# new_one = [['pear','bear'],['drawers','bear','grapes', 'apple']]