亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: 對比文件樹 [打印本頁]

作者: nessunsweet    時間: 2013-11-14 09:31
標(biāo)題: 對比文件樹
用python對比2個文件樹,將不同的輸出出來。
比如a文件樹,b文件樹,輸入b中與a不同的部分。
謝謝大神指點。
作者: q1208c    時間: 2013-11-14 09:41
回復(fù) 1# nessunsweet

文件樹 ?


   
作者: icymirror    時間: 2013-11-14 10:04
本帖最后由 icymirror 于 2013-11-14 11:05 編輯

回復(fù) 1# nessunsweet

    其中的"{path}-{file}"是為了方便比較之后的分割加入進(jìn)去的,當(dāng)然,如果文件名或者路徑名里面有"-"的話,可以把"-"換成其它的你可以用的,比如"|"
    difference是set用來求不同的運算,所以,基本上除了把文件用格式化保存下,基本上我沒有去做什么比較不同,用系統(tǒng)函數(shù)給做了,呵呵。
  1. def fetch_file_info(dirname):
  2.     result = []
  3.     for root, path, files in os.walk(dirname):
  4.         for file_item in files:
  5.             result.append("{path}-{file}".format(path=path,file=file_item))
  6.     return result

  7. def compare_file_info(first_folder, second_folder):
  8.     result = set(first_folder).difference(set(second_folder))
  9.     return result

  10. def main():
  11.     dir1 = fetch_file_info(r"D:\tools\Lib")  # 這個是我的ironpython的lib庫
  12.     dir2 = fetch_file_info(r"D:\tools\App\Lib") # 這個是我的cpython的lib庫,
  13.     result = compare_file_info(dir1, dir2)
  14.     import pprint
  15.     pprint.pprint(result)
復(fù)制代碼
正好用這個比較了下兩個庫有什么不一樣的文件,呵呵

PS:剛剛回來又編輯了下,因為發(fā)現(xiàn)開始的文件信息收集做的太粗了。
所以把fetch_file_info函數(shù)修改了下。見諒!




歡迎光臨 Chinaunix (http://72891.cn/) Powered by Discuz! X3.2