gpt4 book ai didi

python:根据部分标题提取文件,标题中有分割标准

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

我有一个命名不一致的文件列表:

pLst = ['CO_002_2016_Q4_Merge.loc', 'CO_002_2016_Merge.zip', 'CO_002_2016_q4_alias.loc', 'CO_002_2017_here_2017_q1_streets_alias.loc.xml', 'CO_002_2017_here_2017_q1_streets_parity.loc', 'AuburnAliasGCS_1984_1106.lox', 'CA_ORG_BCP.loc.xml', 'CA_ORG_BCP.loc', 'Co52 Alias Address Locator.lox', 'CO_002_2017_here_2017_q1_streets_parity.loc.xml', 'CentralCostaCountyStreets.lox', 'CO_002_2016_q4_alias.lox']

我想提取包含此列表中的字符串的文件:

exCrt = ["2016_Q4", "2016_q4","2017"]

我想将包含 exCrt 中任何元素的所有文件添加到提取列表中,但我看不到将拆分标准与部分选择标准(即“_”)隔离开来的方法。

我尝试使用任何:

if any(x in pLst for x in exCrt):
exLst.add(x)

这导致了一个空集。

我还尝试将 exCrt 更改为 ["2016","q4","Q4","2017"],然后使用“与”“或”方法:

for i in pLst:
if exCrt[0] and exCrt[1] or exLst[0] and exCrt[2] or exCrt[3] in i.split("_"):
exLst.add(i)

但这并没有排除任何不需要的文件。

我希望输出是

( 'CO_002_2016_Q4_Composite.loc',
'CO_002_2016_q4_alias.loc.xml',
'CO_002_2016_Q4_Composite.loc.xml',
'CO_002_2016_Q4_Merge.lox',
'CO_002_2016_Q4_Merge.loc.xml',
'CO_002_2016_Q4_Merge.loc',
'CO_002_2016_q4_alias.loc',
'CO_002_2016_q4_alias.lox',
'CO_002_2017_here_2017_q1_streets_alias.lox',
'CO_002_2017_here_2017_q1_streets_alias.loc',
'CO_002_2017_here_2017_q1_streets_alias.loc.xml',
'CO_002_2017_here_2017_q1_streets_parity.loc',
'CO_002_2017_here_2017_q1_streets_parity.loc.xml')

最佳答案

如果您按如下方式调整,您使用 any 的方法将起作用:

exCrt = ["2016_Q4", "2016_q4", "2017"]
exLst = []
for p in pLst:
if any(x in p for x in exCrt):
exLst.append(p)

关于python:根据部分标题提取文件,标题中有分割标准,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46331530/

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