我对Python很新,我试图解析一个文件。只有文件中的某些行包含感兴趣的数据,并且我最终需要从文件中的有效匹配行解析出来的东西的字典。从Python成功的正则表达式匹配生成字典
下面的代码工作,但它有点难看,我试图了解它应该如何完成,也许有理解,或者与多行正则表达式。我正在使用Python 3.2。
file_data = open('x:\\path\\to\\file','r').readlines()
my_list = []
for line in file_data:
# discard lines which don't match at all
if re.search(pattern, line):
# icky, repeating search!!
one_tuple = re.search(pattern, line).group(3,2)
my_list.append(one_tuple)
my_dict = dict(my_list)
您能否提出更好的实施方案?
理解可能很漂亮,但是你不能轻易地将一个变量绑定到它们内部的值,所以你需要双重的're.search'。只需使用一个循环。 –