欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python遍歷文件夾 處理json文件的方法

 更新時間:2019年01月22日 09:12:03   作者:Norton-Linux內(nèi)核研究  
今天小編就為大家分享一篇Python遍歷文件夾 處理json文件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

有兩種做法:os.walk()、pathlib庫,個人感覺pathlib庫的path.glob用來匹配文件比較簡單。

下面是第二種做法的實例(第一種做法百度有很多文章):

from pathlib import Path
import json

analysis_root_dir = "D:\\analysis_data\json_file"
store_result="D:\\analysis_data\\analysis_result\\dependency.csv"

def parse_dir(root_dir):
  path = Path(root_dir)

  all_json_file = list(path.glob('**/*.json'))

  parse_result = []

  for json_file in all_json_file:

    # 獲取所在目錄的名稱
    service_name = json_file.parent.stem
    with json_file.open() as f:
      json_result = json.load(f)
    json_result["service_name"] = service_name
    parse_result.append(json_result)

  return parse_result

def write_result_in_file(write_path , write_content):

  with open(write_path,'w') as f:
    f.writelines("service_name,action,method,url\n")
    for dict_content in write_content:
       url = dict_content['url']
       method = dict_content['method']
       action = dict_content['action']
       service_name = dict_content['service_name']
       f.writelines(service_name + ","+ action+","+method + ","+ url+"\n")

def main():
  print("main begin...")
  parse_result = parse_dir(analysis_root_dir)
  print(parse_result)
  write_result_in_file(store_result,parse_result)
  print("main finished...")

if __name__ == '__main__':
  main()

運行結(jié)果

main begin...
[{'url': '/rest/webservice/v1/dosomthing', 'method': 'post', 'action': 'create', 'service_name': 'WebSubService'}, {'url': '/rest/webservice/v1/dosomthing', 'method': 'post', 'action': 'create', 'service_name': 'WebSubService01'}, {'url': '/rest/webservice/v1/dosomthing', 'method': 'post', 'action': 'create', 'service_name': 'WebSubService02'}, {'url': '/rest/webservice/v1/dosomthing', 'method': 'post', 'action': 'create', 'service_name': 'WebSubService03'}, {'url': '/rest/webservice/v1/dosomthing', 'method': 'post', 'action': 'create', 'service_name': 'WebSubService04'}, {'url': '/rest/webservice/v1/dosomthing', 'method': 'post', 'action': 'create', 'service_name': 'WebSubService05'}]
main finished...

目錄結(jié)構(gòu)

json file內(nèi)容

{
 "url":"/rest/webservice/v1/dosomthing",
 "method":"post",
 "action":"create"
}

以上這篇Python遍歷文件夾 處理json文件的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python遍歷目錄的方法小結(jié)

    python遍歷目錄的方法小結(jié)

    這篇文章主要介紹了python遍歷目錄的方法,總結(jié)分析了Python常用的兩種目錄遍歷技巧,需要的朋友可以參考下
    2016-04-04
  • python3獲取文件中url內(nèi)容并下載代碼實例

    python3獲取文件中url內(nèi)容并下載代碼實例

    這篇文章主要介紹了python3獲取文件中url內(nèi)容并下載代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • Python mutiprocessing多線程池pool操作示例

    Python mutiprocessing多線程池pool操作示例

    這篇文章主要介紹了Python mutiprocessing多線程池pool操作,結(jié)合實例形式分析了Python多線程模塊multiprocessing進程池相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01
  • Python Gluon參數(shù)和模塊命名操作教程

    Python Gluon參數(shù)和模塊命名操作教程

    這篇文章主要介紹了Python Gluon參數(shù)和模塊命名操作,結(jié)合實例形式詳細分析了Python Gluon模塊功能及基本使用技巧,需要的朋友可以參考下
    2019-12-12
  • Matplotlib實現(xiàn)各種條形圖繪制

    Matplotlib實現(xiàn)各種條形圖繪制

    這篇文章主要介紹了Matplotlib實現(xiàn)各種條形圖繪制,文章通過利用 plt.bar 方法實現(xiàn)各種條形圖繪制,內(nèi)容詳細具有一定的參考價值,需要的小伙伴可以參考一下
    2022-03-03
  • Python中包的用法及安裝

    Python中包的用法及安裝

    在本篇文章里小編給大家整理的是關(guān)于Python中一些包的基本用處和安裝方法,需要的朋友們可以學習參考下。
    2020-02-02
  • Python爬蟲DOTA排行榜爬取實例(分享)

    Python爬蟲DOTA排行榜爬取實例(分享)

    下面小編就為大家?guī)硪黄狿ython爬蟲DOTA排行榜爬取實例(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • PyQt5設(shè)置登錄界面及界面美化的實現(xiàn)

    PyQt5設(shè)置登錄界面及界面美化的實現(xiàn)

    這篇文章主要介紹了PyQt5設(shè)置登錄界面及界面美化的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • 淺談Pycharm最有必要改的幾個默認設(shè)置項

    淺談Pycharm最有必要改的幾個默認設(shè)置項

    今天小編就為大家分享一篇淺談Pycharm最有必要改的幾個默認設(shè)置項,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python類的高級函數(shù)詳解

    Python類的高級函數(shù)詳解

    這篇文章主要介紹了Python類的高級函數(shù),本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08

最新評論