gpt4 book ai didi

python - 使用 find 方法查找完全匹配

转载 作者:行者123 更新时间:2023-11-30 23:30:08 25 4
gpt4 key购买 nike

在这段代码中,我解压一个文件来搜索一个名为node.txt的特定文件,但如果我有更多名为node.txt.old或node.txt.new的文件,它会显示在搜索中。

那么,简而言之,我如何限制 loop_package.find("node.txt") 仅匹配确切的文件?

import zipfile
import re

ziproot = zipfile.ZipFile('c:\\zips\somezip.zip')
node_list = []
for loop_package in ziproot.namelist():
if loop_package.find("node.txt"):
for line in ziproot.read(loop_package).split("\n"):
if line.find("doc-node") >= 0:
node_dict = dict()
for iline in ziproot.read(loop_package).split("\n"):
if iline.find("node_nsName") >= 0:
mt = re.search(r'(.*>)(.*?)(<.*)', iline, re.M | re.I)
node_dict['filePath'] = loop_package
node_dict['nodeCon'] = mt.group(2)
node_list.append(node_dict)
else:
pass
else:
pass
else:
pass

提前致谢。

最佳答案

使用endswith而不是find

for loop_package in ziproot.namelist():
if loop_package.endswith("node.txt"):

由于loop_package是一个完整的文件路径,我们感兴趣的是这样一个字符串的结尾,即文件名。

关于python - 使用 find 方法查找完全匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20804867/

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