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

腳本之家,腳本語(yǔ)言編程技術(shù)及教程分享平臺(tái)!
分類導(dǎo)航

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

服務(wù)器之家 - 腳本之家 - Python - python讀取ini配置的類封裝代碼實(shí)例

python讀取ini配置的類封裝代碼實(shí)例

2020-05-04 12:07小鋒學(xué)長(zhǎng) Python

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

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

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

?
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,請(qǐng)核對(duì)[%s]" % section)
      return None
    return True
 
  # 讀取ini,并獲取所有的section名
  def readSectionItems(self, cfgpath):
    if not os.path.isfile(cfgpath):
      print(">> 無此文件,請(qǐng)核對(duì)路徑[%s]" % cfgpath)
      return None
    self.cfgpath = cfgpath
    self.conf.read(cfgpath, encoding="utf-8")
    return self.conf.sections()
 
  # 讀取一個(gè)section,list里面對(duì)象是元祖
  def readOneSection(self, section):
    try:
      item = self.conf.items(section)
    except Exception:
      print(">> 無此section,請(qǐng)核對(duì)[%s]" % section)
      return None
    return item
 
  # 讀取一個(gè)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
 
  # 刪除一個(gè) section中的一個(gè)item(以鍵值KEY為標(biāo)識(shí))
  def removeItem(self, section, key):
    if not self.checkSection(section):
      return
    self.conf.remove_option(section, key)
 
  # 刪除整個(gè)section這一項(xiàng)
  def removeSection(self, section):
    if not self.checkSection(section):
      return
    self.conf.remove_section(section)
 
  # 添加一個(gè)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)
 
  # 執(zhí)行write寫入, remove和set方法并沒有真正的修改ini文件內(nèi)容,只有當(dāng)執(zhí)行conf.write()方法的時(shí)候,才會(huì)修改ini文件內(nèi)容
  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)

測(cè)試ini

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

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

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

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 免费高清www动漫视频播放器 | 欧美一级免费看 | 毛片在线免费视频 | 91国产在线播放 | 美女18隐私羞羞视频网站 | 日韩免费在线看 | aaaaa特级毛片| 日本无卡无吗中文免费 | 人体欣赏孕妇季玥图片 | 好妈妈7在线观看高清 | 超级乱淫伦短篇在车上 | 青草国产在线观看 | 日本中文字幕高清 | 97久久久亚洲综合久久88 | 奇米7777第四色 | 日韩精品视频美在线精品视频 | 欧美精品1区 | 午夜无码片在线观看影院 | 久久婷婷五月综合色丁香花 | 日本一区视频 | 无码日韩精品一区二区免费 | 美女尿口照片 | 赤色疑惑 | 久久精品国产亚洲AV麻豆欧美玲 | 日韩aⅴ在线观看 | 欧美日韩精品一区二区三区视频播放 | 国产高清在线精品一区二区三区 | 黄瓜视频黄版 | 4455永久在线观免费看片 | 精品小视频在线观看 | 青青青手机视频在线观看 | 美女被的视频 | 国产成人精品本亚洲 | 精品亚洲麻豆1区2区3区 | 精品国产欧美一区二区三区成人 | 国产亚洲精品激情一区二区三区 | 短篇艳妇系列 | 精品国产福利在线 | 国产精品亚洲午夜不卡 | 网站国产 | 免费国产之a视频 |