从列表中获取元素,该列表由任何其他字符作为前缀/后缀

2024-10-04 03:24:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含这么多元素的列表。某些元素由任何字母数字字符组成前缀/后缀

list1 = ["sign","xxsignzz","xxsign", "signzz","Design", "abc.sign.abc", "SIGN", "siGn"]
list2 = ["sign"]

我想要清单3,其中包含如下元素

list3=["xxsignzz","xxsign","signzz","Design","abc.sign.abc"]

我应该通过清单3中的任何内容获得符号前缀/后缀的所有值

有人能帮我吗


Tags: 元素列表字母数字字符后缀designabc
3条回答

尝试:

[li for li in list1 if list2[0] in li and len(li)!=len(list2[0])]

['xxsignzz', 'xxsign', 'signzz', 'Design', 'abc.sign.abc']

这就是你想要的吗:

lower = [l.lower() for l in list1]
list3 = [el[0] for el in zip(list1, lower) if el[1] not in list2]

>>> ['xxsignzz', 'xxsign', 'signzz', 'Design', 'abc.sign.abc']

尝试:

list1 = ["sign", "xxsignzz","xxsign", "signzz","Design", "abc.sign.abc", "SIGN", "siGn"]
list2 = ["sign"]


output = [i for i in list1 for x in list2 if x in i and x.lower() != i.lower()]
print(output) # ['xxsignzz', 'xxsign', 'signzz', 'Design', 'abc.sign.abc']

相关问题 更多 >