Skip to main content
 首页 » 编程设计

python之如何使用 Python 在文本文件中找到字符串的第一个实例

2025年05月04日19rubylouvre

我试图在文本文件中搜索字符串的第一个实例并返回第一行中的所有其他内容,但我当前的程序找到并返回最后一行字符串。

知道我需要做什么吗?

谢谢!

我的代码是这样的:

#Open search file as read only 
with open(fullpath, 'r') as searchfile: 
 
     #Clear variable names 
     partname = partsize = None 
 
     #Search file for strings, trim lines and save as variables 
     for line in searchfile: 
 
         if "PART FILE NAME" in line: 
             x = line 
             partname = x[18:-1] 
 
         if "PART SIZE" in line: 
             y = line 
             partsize = y[18:-1] 
     #Open csv file, write variables, close csv file 
     storefile = open("C:/Documents and Settings/Desktop/blue pega3.csv", 'a') 
     storefile.write("%s,%s,%s\n" %(partname, partsize, fullpath)) 
     storefile.close() 
     #Close search file 
     searchfile.close()         ` 

请您参考如下方法:

您的代码返回最后的匹配项,因为您遍历整个文件,不断覆盖 partname 和 partsize。如果它们尚未定义,您只能覆盖它们:

partname = partsize = None 
with open(fullpath, 'r') as searchfile: 
    for line in searchfile: 
        if partname is None and "PART FILE NAME" in line: 
            partname = line[18:-1] 
        if partsize is None and "PART SIZE" in line: 
            partsize = line[18:-1] 
        if partname is not None and partsize is not None: 
            break 

如果两行都已找到,最后一个 if 将停止循环遍历文件——我们不需要继续搜索。