Python實(shí)現(xiàn)比較兩個(gè)文件夾中代碼變化的方法
本文實(shí)例講述了Python實(shí)現(xiàn)比較兩個(gè)文件夾中代碼變化的方法。分享給大家供大家參考。具體如下:
這里將修改代碼后的目錄與原始目錄做對(duì)比,羅列出新增的代碼文件,以及修改過(guò)的代碼文件
# -*- coding: utf-8 -*-
import os;
folderA = "F:\\Projects\\FreeImageV3_14_1\\".lower();
folderB = u"E:\\Software\\圖像解碼庫(kù)\\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();
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
python讀寫(xiě)Excel表格的實(shí)例代碼(簡(jiǎn)單實(shí)用)
這篇文章主要介紹了python讀寫(xiě)Excel表格的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-12-12
Python實(shí)現(xiàn)各種排序算法的代碼示例總結(jié)
這篇文章主要介紹了Python實(shí)現(xiàn)各種排序算法的代碼示例總結(jié),其實(shí)Python是非常好的算法入門(mén)學(xué)習(xí)時(shí)的配套高級(jí)語(yǔ)言,需要的朋友可以參考下2015-12-12
如何使用 Poetry 進(jìn)行 Python 項(xiàng)目管理
本文介紹了如何安裝、卸載和管理Poetry,以及如何查看其版本和位置,此外,還詳細(xì)說(shuō)明了如何使用Poetry安裝項(xiàng)目依賴(lài),包括依賴(lài)解析、鎖定、虛擬環(huán)境管理等優(yōu)勢(shì),感興趣的朋友一起看看吧2024-11-11
python3+selenium實(shí)現(xiàn)126郵箱登陸并發(fā)送郵件功能
這篇文章主要為大家詳細(xì)介紹了python3+selenium實(shí)現(xiàn)126郵箱登陸并發(fā)送郵件功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01
python實(shí)現(xiàn)sublime3的less編譯插件示例
這篇文章主要介紹了python實(shí)現(xiàn)sublime3的less編譯插件示例的相關(guān)資料2014-04-04

