如何在Python中查找或删除列表中的子字符串列表

2024-09-27 07:35:43 发布

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

我有一个要从另一个列表中删除的子字符串列表mylist

mylist = ['abc123', 'def456', 'ghi789','ghi123']

sub = ['123','456']
print ([s for s in mylist if sub[j] in s for j in sub])

这会产生错误。有没有别的办法找到这个。你知道吗

预期产量:

['abc123','ghi123','def456']

Tags: 字符串in列表forif错误print产量
2条回答

看来你需要

mylist = ['abc123', 'def456', 'ghi789','ghi123']
sub = ['123','456']

print ([i for i in mylist for j in sub if j in i])

输出:

['abc123', 'def456', 'ghi123']

你可以用regex来实现这个

import re

mylist = ['abc123', 'def456', 'ghi789', 'ghi123']

sub = ['123', '456']
for item in mylist:
    m = re.match(r"([a-zA-Z]+)([0-9]+)", item)
    if m.group(2) not in sub:
        mylist.remove(item)
    print(mylist)

相关问题 更多 >

    热门问题