VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > python入门 >
  • python入门教程之Python3标准库:filecmp比较文件(3)

本站最新发布   Python从入门到精通|Python基础教程
试听地址  
https://www.xin3721.com/eschool/pythonxin3721/



  1. import filecmp
  2. import pprint
  3.  
  4. dc = filecmp.dircmp('example/dir1', 'example/dir2')
  5. print('Common:')
  6. pprint.pprint(dc.common)
  7.  
  8. print('\nDirectories:')
  9. pprint.pprint(dc.common_dirs)
  10.  
  11. print('\nFiles:')
  12. pprint.pprint(dc.common_files)
  13.  
  14. print('\nFunny:')
  15. pprint.pprint(dc.common_funny)

在示例数据中,file_in_dir1元素在一个目录中是一个文件,而在另一个目录中是一个子目录,所以它会出现在“有趣”列表中。

文件之间的差别也可以做类似的划分。


  1. import filecmp
  2.  
  3. dc = filecmp.dircmp('example/dir1', 'example/dir2')
  4. print('Same :', dc.same_files)
  5. print('Different :', dc.diff_files)
  6. print('Funny :', dc.funny_files)

文件not_the_same通过os.stat()比较,并且不检查内容,所以它包含在same_files列表中。

最后一点,子目录也会被保存,以便容易地完成递归比较。


  1. import filecmp
  2.  
  3. dc = filecmp.dircmp('example/dir1', 'example/dir2')
  4. print('Subdirectories:')
  5. print(dc.subdirs)

属性subdirs是一个字典,它将目录名映射到新的dircmp对象。

相关教程