我有一个文件,其中有几行:
FS "name" machine:"path"
{
}
我想读取 FS 之后的任何内容并返回每个参数。我的意思是返回应该是名称、机器和路径。
Name:
"/PF/B/"
"/PF/A/"
Machine:
FFFFFF..
XXXXXX…
Path:
“/PF/J”
“/PF/K”
代码:
Def parse()
with open (myfile.txt) as f:
for line in f:
if line.strip().startswith(‘FS’)
Name = []
Machine = []
Path = []
????
如有任何帮助,我们将不胜感激。
最佳答案
你可以使用正则表达式,
import re
with open('myfile.txt') as f:
found = re.findall(r'^FS\s*"([^"]*)"\s*([^:]*)\s*:\s*"([^"]*)"',f.read(),re.MULTILINE)
names, machines, paths = zip(*found)
编辑:检查'FS'是否在一行的开头
EDIT2:适用于搜索模式之间可能的空格
关于python - 在一行中解析python中的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25745773/