在Python中,你可以使用多种方法来循环查找文本。以下是一些常见的方法:
1. 使用`for`循环逐行读取文件内容,并检查每一行是否包含特定的文本。
def search_in_files(keyword, file_path):
with open(file_path, 'r') as file:
for line_number, line in enumerate(file, start=1):
if keyword in line:
print(f"在第 {line_number} 行找到了 {keyword}")
2. 使用`while`循环和`readline()`方法逐行读取文件内容。
def search_in_files(keyword, file_path):
with open(file_path, 'r') as file:
line = file.readline()
while line:
if keyword in line:
print(f"在第 {line_number} 行找到了 {keyword}")
line = file.readline()
3. 使用`glob`模块获取文件列表,然后对每个文件使用上述方法进行搜索。
import glob
def search_in_files(keyword, folder_path):
for file in glob.glob(os.path.join(folder_path, '*')):
search_in_files(keyword, file)
4. 使用`os.walk`遍历指定路径下的所有文件,并检查每个文件的内容。
import os
def search_in_files(keyword, path='.'):
for root, dirs, files in os.walk(path):
for file in files:
file_path = os.path.join(root, file)
with open(file_path, 'r') as f:
for line_number, line in enumerate(f, start=1):
if keyword in line:
print(f"在第 {line_number} 行找到了 {keyword}")
请根据你的需求选择合适的方法。