一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - python讀取ini配置的類封裝代碼實例

python讀取ini配置的類封裝代碼實例

2020-05-04 12:07小鋒學長 Python

這篇文章主要介紹了python讀取ini配置的類封裝代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

這篇文章主要介紹了python讀取ini配置封裝代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

此為基礎封裝,未考慮過多異常處理

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# coding:utf-8
import configparser
import os
 
class IniCfg():
  def __init__(self):
    self.conf = configparser.ConfigParser()
    self.cfgpath = ''
 
  def checkSection(self, section):
    try:
      self.conf.items(section)
    except Exception:
      print(">> 無此section,請核對[%s]" % section)
      return None
    return True
 
  # 讀取ini,并獲取所有的section名
  def readSectionItems(self, cfgpath):
    if not os.path.isfile(cfgpath):
      print(">> 無此文件,請核對路徑[%s]" % cfgpath)
      return None
    self.cfgpath = cfgpath
    self.conf.read(cfgpath, encoding="utf-8")
    return self.conf.sections()
 
  # 讀取一個section,list里面對象是元祖
  def readOneSection(self, section):
    try:
      item = self.conf.items(section)
    except Exception:
      print(">> 無此section,請核對[%s]" % section)
      return None
    return item
 
  # 讀取一個section到字典中
  def prettySecToDic(self, section):
    if not self.checkSection(section):
      return None
    res = {}
    for key, val in self.conf.items(section):
      res[key] = val
    return res
 
  # 讀取所有section到字典中
  def prettySecsToDic(self):
    res_1 = {}
    res_2 = {}
    sections = self.conf.sections()
    for sec in sections:
      for key, val in self.conf.items(sec):
        res_2[key] = val
      res_1[sec] = res_2.copy()
      res_2.clear()
    return res_1
 
  # 刪除一個 section中的一個item(以鍵值KEY為標識)
  def removeItem(self, section, key):
    if not self.checkSection(section):
      return
    self.conf.remove_option(section, key)
 
  # 刪除整個section這一項
  def removeSection(self, section):
    if not self.checkSection(section):
      return
    self.conf.remove_section(section)
 
  # 添加一個section
  def addSection(self, section):
    self.conf.add_section(section)
 
  # 往section添加key和value
  def addItem(self, section, key, value):
    if not self.checkSection(section):
      return
    self.conf.set(section, key, value)
 
  # 執行write寫入, remove和set方法并沒有真正的修改ini文件內容,只有當執行conf.write()方法的時候,才會修改ini文件內容
  def actionOperate(self, mode):
    if mode == 'r+':
      conf.write(open(self.cfgpath, "r+", encoding="utf-8"))  # 修改模式
    elif mode == 'w':
      conf.write(open(self.cfgpath, "w"))           # 刪除原文件重新寫入
    elif mode == 'a':
      conf.write(open(self.cfgpath, "a"))           # 追加模式寫入
 
cfgpath = r'C:\Users\SXF\Desktop\config.ini'
 
inicfg = IniCfg()
sections = inicfg.readSectionItems(cfgpath)
print(sections)
content = inicfg.readOneSection('chaoji')
print(content)
dic = inicfg.prettySecToDic('chaoji')
print(dic)
dic = inicfg.prettySecsToDic()
print(dic)
inicfg.addSection('chaoji22')
 
content = inicfg.readOneSection('chaoji')
print(content)

測試ini

?
1
2
3
4
5
6
7
[chaoji]
chaoji_username = 123
chaoji_password = 456
[my]
soft_id     = 789
sleeptime     = asd
cnt_count     = zxc

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://www.cnblogs.com/sxf1061700625/p/12154494.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美一区二区三区高清不卡tv | 黑人性xxxⅹxxbbbbb | 免费一级特黄特色大片在线 | 精品国产国产综合精品 | 久久91精品国产91 | 99国产牛牛视频在线网站 | 狠狠做五月深爱婷婷天天综合 | 欧美gay xxxx| 嫩草影院永久在线播放 | 国产亚洲精品自在线亚洲情侣 | 亚洲天堂视频在线观看 | 日本高清色视频www 日本高清免费观看 | www.久久av.com| 免费午夜剧场 | 嫩草研究 | 九9热这里只有真品 | 啊啊啊好大在线观看 | 日韩高清在线高清免费 | 桃色公寓| poren黑人 | www亚洲视频 | 亚洲精品久久久打桩机 | 大奶妈咪女教师 | 欧美不卡一区二区三区免 | 国产综合成人久久大片91 | 欧洲网色偷偷亚洲男人的天堂 | 欧美性xxxxxx爱 | 欧美夫妇野外交换hd高清版 | 91精品大神国产在线播放 | 91大神在线精品播放 | 日韩欧美一区二区三区四区 | 国产一区二区在线看 | 欠操h| 天天躁天天碰天天看 | 亚洲天堂视频在线免费观看 | 99热6这里只有精品 99欧美精品 | 日本中文字幕永久在线 | 风间由美一区二区播放合集 | 日韩一卡2卡3卡新区网站 | 青草视频在线观看视频 | 欧美亚洲另类综合 |