code: def from_path_by_md5(md5_value, list_of_dir):
                 
          def filter(winfile):
              if winfile.md5 == md5_value:
                  return True
              else:
                  return False
          
          if not isinstance(list_of_dir, (list, set)):
              list_of_dir = [list_of_dir, ]        
              
          init_mode = WinFile.init_mode
          WinFile.use_slow_init()
          
          fc = FileCollection()
          for dir_path in list_of_dir:
              for winfile in FileCollection.from_path_by_criterion(
                      dir_path, filter, keepboth=False).iterfiles():
                  fc.files.setdefault(winfile.abspath, winfile)
          
          if init_mode == 1:
              WinFile.use_fast_init()
          elif init_mode == 2:
              WinFile.use_regular_init()
          elif init_mode == 3:
              WinFile.use_slow_init()
                  
          return fc
docs: Create a new FileCollection, and select all files' that md5 is 
          matching.
          
          **中文文档**
          
          给定一个文件使用WinFile模块获得的md5值, 在list_of_dir中的文件里, 
          找到与之相同的文件。