- 論壇徽章:
- 4
|
本帖最后由 icymirror 于 2013-11-14 11:05 編輯
回復(fù) 1# nessunsweet
其中的"{path}-{file}"是為了方便比較之后的分割加入進去的,當(dāng)然,如果文件名或者路徑名里面有"-"的話,可以把"-"換成其它的你可以用的,比如"|"
difference是set用來求不同的運算,所以,基本上除了把文件用格式化保存下,基本上我沒有去做什么比較不同,用系統(tǒng)函數(shù)給做了,呵呵。- def fetch_file_info(dirname):
- result = []
- for root, path, files in os.walk(dirname):
- for file_item in files:
- result.append("{path}-{file}".format(path=path,file=file_item))
- return result
- def compare_file_info(first_folder, second_folder):
- result = set(first_folder).difference(set(second_folder))
- return result
- def main():
- dir1 = fetch_file_info(r"D:\tools\Lib") # 這個是我的ironpython的lib庫
- dir2 = fetch_file_info(r"D:\tools\App\Lib") # 這個是我的cpython的lib庫,
- result = compare_file_info(dir1, dir2)
- import pprint
- pprint.pprint(result)
復(fù)制代碼 正好用這個比較了下兩個庫有什么不一樣的文件,呵呵
PS:剛剛回來又編輯了下,因為發(fā)現(xiàn)開始的文件信息收集做的太粗了。
所以把fetch_file_info函數(shù)修改了下。見諒! |
|