code: def from_path(list_of_dir):
          
          if isinstance(list_of_dir, str):
              list_of_dir = [list_of_dir, ]
          elif isinstance(list_of_dir, WinDir):
              list_of_dir = [list_of_dir.abspath, ]
          elif isinstance(list_of_dir, list):
              list_of_dir = [str(i) for i in list_of_dir]
              
          fc = FileCollection()
          for dir_path in list_of_dir:
              for winfile in FileCollection.yield_all_winfile(dir_path):
                  fc.files.setdefault(winfile.abspath, winfile)
          return fc
docs: Create a new FileCollection and add all files from ``dir_path``.
          
          :param list_of_dir: absolute dir path, WinDir instance, list of 
            absolute dir path or list of WinDir instance.
            
          **中文文档**
          
          添加dir_path目录下的所有文件到一个新的FileCollection中.