2016-12-08 3 views
0
def multi_search(pat_file : open, text_file : open) -> {str:[int]}: 
    answer = {(p.rstrip(),re.compile(p.rstrip())):[] for p in pat_file} 
    for num,line in enumerate(text_file,1): 
     line = line.rstrip() 
     for (p,c),lines in answer.items(): 
      if c.search(line) != None: 
       lines.append(num) 
    return {p:l for (p,c),l in answer.items()} 

enter image description hereこの機能は何をしますか(どのように機能しますか)?

関数は二つのリストを取りますが、私は関数が戻るには、二つのリストが絵で示されているのかわからないです。

誰かが私にこの機能は何を行い、どのように機能するのか説明できますか?

答えて

0

最初のファイルの各パターンについて、関数は指定されたパターンを含む2番目のファイル内のすべての行番号を見つけます。辞書が返され、pattern --> list of line numbersが含まれます。

関連する問題