gpt4 book ai didi

python - 尝试从列表中删除一组元组时遇到问题?

转载 作者:行者123 更新时间:2023-11-30 22:34:00 26 4
gpt4 key购买 nike

只是一个简单的问题,伙计们,我有一长串像这样的元组:

a_lis = [('[', '1O--'), ("'", '1B--'),('hi', 'SDFD29384'), ('there','2398SDFDSF'),("'", '1B--'), (']', '1C--')]

如何删除所有这些元组 (*): ('[', '1O--'), ("'", '1B--'),("'", '1B-- '), (']', '1C--') 来自 a_lis

我尝试过:

flat_list = filter(flat_list, lambda x: x[0] == '[' && x[1] == "'")

但是,我遇到了不可迭代的错误,这是从列表中删除此类元组 (*) 的更好方法,以便获得?:

a_lis = [('hi', 'SDFD29384'), ('there','2398SDFDSF')]

最佳答案

这是因为您提供给过滤器的参数顺序不正确。

直接使用

flat_list = filter(lambda x: x[0] != '[' and x[0] != "'", a_lis)

注意:查看您的数据,更好的方法如下所示:

flat_list = filter(lambda x: '--' not in x[1], a_lis)

编辑:正如下面的评论中提到的,上面的代码使 flat_list 成为一个生成器。要获取具体列表,只需使用列表推导式:

def should_remove(s):
return '[' in s or ']' in s or "'" in s

flat_list = [x in a_lis if not should_remove(x[1])]

或者

flat_list = [x in a_lis if '--' not in x[1]]

关于python - 尝试从列表中删除一组元组时遇到问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44977520/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com