我是靠谱客的博主 粗暴黄豆,这篇文章主要介绍Python实现比较两个文件夹中代码变化的方法,现在分享给大家,希望可以做个参考。

本文实例讲述了Python实现比较两个文件夹中代码变化的方法。分享给大家供大家参考。具体如下:

这里将修改代码后的目录与原始目录做对比,罗列出新增的代码文件,以及修改过的代码文件

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# -*- coding: utf-8 -*- import os; folderA = "F:\\Projects\\FreeImageV3_14_1\\".lower(); folderB = u"E:\\Software\\图像解码库\\FreeImage3141\\FreeImage\\".lower(); filePathsA = {}; filePathsB = {}; for root,dirs,files in os.walk(folderA): for fileName in files: filePathsA[(root + "\\" + fileName).lower()] = 1; for root,dirs,files in os.walk(folderB): for fileName in files: filePathsB[(root + "\\" + fileName).lower()] = 1; # 在filePathsA中,找到所有和filePathsB中不一致的文件的路径 modifiedFilePath = []; addedFilePath = []; for filePathA in filePathsA: folderALen = len(folderA); filePathB = folderB + filePathA[folderALen:]; idx = filePathA.rfind("."); if idx == -1: continue; ext = filePathA[idx + 1:]; ext = ext.lower(); if ext != "c" and ext != "h" and ext != "cpp" and ext != "cxx": continue; if filePathB not in filePathsB: addedFilePath.append(filePathA); continue; text_file = open(filePathA, "r"); textA = text_file.read(); text_file.close(); text_file = open(filePathB, "r"); textB = text_file.read(); text_file.close(); if textA != textB: modifiedFilePath.append(filePathA); output = open('res.txt', 'w'); output.write("added files:\n"); for filePath in addedFilePath: output.write(filePath + "\n"); output.write("modified files:\n"); for filePath in modifiedFilePath: output.write(filePath + "\n"); output.close();

希望本文所述对大家的Python程序设计有所帮助。

最后

以上就是粗暴黄豆最近收集整理的关于Python实现比较两个文件夹中代码变化的方法的全部内容,更多相关Python实现比较两个文件夹中代码变化内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(167)

评论列表共有 0 条评论

立即
投稿
返回
顶部