1. 程式人生 > >python_day13_檔案操作常用模組

python_day13_檔案操作常用模組

json 模組 .json檔案

  • json 定義不同語言之間的互動規則
  • 序列化:記憶體資料轉換成字元
  • 反序列化:把字元轉為記憶體資料
  • json.dumps()序列化
  • json.dump(obj,fp,…) 序列化並寫入檔案obj為變數名 fp檔名(name.json檔案需要提前開啟
  • json.loads() 反序列化把字串轉為記憶體變數
  • json.load(filename) 從檔案進行反序列化

pickle 模組 .pkl檔案

  • pickle.dumps() pickle序列化為bytes

  • pickle.dump()

  • pickle.loads()

  • pickle.load()

  • load(s)、dump(s) 不可執行多次。

  • json:支援 str, int , tuple, list, dict,

  • pickle: 支援python裡所有的資料型別, 但是隻能在python裡使用

shelve 模組

  • 可dump load 多次
  • import shelve
    f = shelve.open(filename)

  • shelve.open() 有writeback引數, 預設值為False 改為True時,可對檔案內容修改

xml 模組

configparser 模組(解析配置檔案)

  • config.ini 檔案

  • config = configparser.ConfigParser()
    conf.read(“conf.ini”)
    print(dir(conf))
    print(config.sections())
    print(conf.default_section)
    print(conf[“bitbucket.org

    ”]))

  • 註釋1

    ; 註釋2

    [section1]
    k1 = v1
    k2:v2

    [section2]
    k1 = v1

    import ConfigParser

    config = ConfigParser.ConfigParser()
    config.read(‘i.cfg’)

    #secs = config.sections()
    #print secs
    #options = config.options(‘group2’)
    #print options

    #item_list = config.items(‘group2’)
    #print item_list

    #val = config.get(‘group1’,‘key’)
    #val = config.getint(‘group1’,‘key’)

    #sec = config.remove_section(‘group1’)
    #config.write(open(‘i.cfg’, “w”))

    #sec = config.has_section(‘wupeiqi’)
    #sec = config.add_section(‘wupeiqi’)
    #config.write(open(‘i.cfg’, “w”))

    #config.set(‘group2’,‘k1’,11111)
    #config.write(open(‘i.cfg’, “w”))

    #config.remove_option(‘group2’,‘age’)
    #config.write(open(‘i.cfg’, “w”))