我對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'。只需使用一個循環。 –