我试图遍历一个目录中的一堆文本文件,并且在每个文本文件中只取出4行。
文件看起来像这样:
ip=1.1.1.1
port=80
idk=idk
idc=idc
uname=test
whoknows=whoknows
password=test
我只想要ip,端口,uname,和密码。我该如何从目录中的每个文件中提取出来?
到目前为止,我有这个,但它只是读取整个文件:
import os
path = "C:/Users/directory"
os.chdir(path)
def read_text_file(file_path):
with open(file_path, 'r') as f:
print(f.read())
for file in os.listdir():
if file.endswith(".txt"):
file_path = f"{path}\{file}"
read_text_file(file_path)
2条答案
按热度按时间8iwquhpp1#
如果确定文件格式,可以遍历文本中的行并搜索某个前缀,例如
ip
。如果行以ip
开头,则返回该行=
符号之后的部分。代码示例:
输出:
ohfgkhjo2#
使用regex可以轻松地提取必要的数据。首先逐行读取全文文件,然后调用下面的函数,字段名为文本作为参数:
调用函数的示例: