ini文件如下


1. 导入 configparser
import configparser
2.创建对象 打开文件
cf = configparser.ConfigParser()
cf.read('test.ini', encoding='utf-8')
3. 读
(1) 获取所有section
sections = cf.sections()
print(sections)
print(sections[0])
(2) 获取具体某一个section内的内容
items = cf.items('qq')
print(items)
print(items[0])
print(items[0][0])
4. 增
(1) 新增一个section
cf.add_section('aaa')
print(cf.sections())
(2) 新增一个key和value
cf.set('aaa', 'c', '256')
items = cf.items('aaa')
print(items)
5. 删除 remove
(1) 删除section
cf.remove_section('qq')
print(cf.sections())
(2) 删除指定key
cf.remove_option('qq', 'a')
items = cf.items('qq')
print(items)
6. write写入
1.write写入有两种方式,一种是删除原文件内容,重新写入:w
cf.write(open(cfgpath, “w”))
2.另外一种是在原文件基础上继续写入内容,追加模式写入:a
cf.write(open(cfgpath, “a”))
参考:
https://blog.csdn.net/zhusongziye/article/details/80024530
<p>ini文件如下</p>
<p><img src="https://static.couragesteak.com/article/cf18653f502b193372bff5bc8ff5e6b8.png" alt="image.png" /></p>
<p><img src="https://static.couragesteak.com/article/f28db721d78329b2c5d6eedee86bb246.png" alt="ini文件示例" /></p>
<h3><a id="1__configparser_6"></a>1. 导入 configparser</h3>
<pre><div class="hljs"><code class="lang-python"><span class="hljs-keyword">import</span> configparser
</code></div></pre>
<h3><a id="2__11"></a>2.创建对象 打开文件</h3>
<pre><div class="hljs"><code class="lang-python">cf = configparser.ConfigParser() <span class="hljs-comment"># 创建管理对象</span>
cf.read(<span class="hljs-string">'test.ini'</span>, encoding=<span class="hljs-string">'utf-8'</span>) <span class="hljs-comment"># 读取ini文件</span>
</code></div></pre>
<h3><a id="3__17"></a>3. 读</h3>
<h5><a id="1_section_18"></a>(1) 获取所有section</h5>
<pre><div class="hljs"><code class="lang-python">sections = cf.sections() <span class="hljs-comment"># 获取所有的section</span>
<span class="hljs-built_in">print</span>(sections) <span class="hljs-comment"># 返回一个列表list</span>
<span class="hljs-built_in">print</span>(sections[<span class="hljs-number">0</span>])
<span class="hljs-comment"># 输出 ['qq', 'weixin']</span>
<span class="hljs-comment"># 输出 qq</span>
</code></div></pre>
<h5><a id="2_section_27"></a>(2) 获取具体某一个section内的内容</h5>
<pre><div class="hljs"><code class="lang-python">items = cf.items(<span class="hljs-string">'qq'</span>)
<span class="hljs-built_in">print</span>(items)
<span class="hljs-built_in">print</span>(items[<span class="hljs-number">0</span>])
<span class="hljs-built_in">print</span>(items[<span class="hljs-number">0</span>][<span class="hljs-number">0</span>])
<span class="hljs-comment"># 输出 [('a', '1'), ('b', '2')] # 打印出为字典</span>
<span class="hljs-comment"># 输出 ('a', '1') # 打印出为元组</span>
<span class="hljs-comment"># 输出 a</span>
</code></div></pre>
<h3><a id="4__37"></a>4. 增</h3>
<h5><a id="1_section_38"></a>(1) 新增一个section</h5>
<pre><div class="hljs"><code class="lang-python">cf.add_section(<span class="hljs-string">'aaa'</span>)
<span class="hljs-built_in">print</span>(cf.sections())
<span class="hljs-comment"># 输出 ['qq', 'weixin', 'aaa']</span>
</code></div></pre>
<h5><a id="2_keyvalue_46"></a>(2) 新增一个key和value</h5>
<pre><div class="hljs"><code class="lang-python">cf.<span class="hljs-built_in">set</span>(<span class="hljs-string">'aaa'</span>, <span class="hljs-string">'c'</span>, <span class="hljs-string">'256'</span>)
items = cf.items(<span class="hljs-string">'aaa'</span>)
<span class="hljs-built_in">print</span>(items)
<span class="hljs-comment"># 输出 [('c', '256')]</span>
</code></div></pre>
<h3><a id="5__remove_54"></a>5. 删除 remove</h3>
<h5><a id="1_section_55"></a>(1) 删除section</h5>
<pre><div class="hljs"><code class="lang-python">cf.remove_section(<span class="hljs-string">'qq'</span>)
<span class="hljs-built_in">print</span>(cf.sections())
<span class="hljs-comment"># 输出 ['weixin']</span>
</code></div></pre>
<h5><a id="2_key_62"></a>(2) 删除指定key</h5>
<pre><div class="hljs"><code class="lang-python">cf.remove_option(<span class="hljs-string">'qq'</span>, <span class="hljs-string">'a'</span>)
items = cf.items(<span class="hljs-string">'qq'</span>)
<span class="hljs-built_in">print</span>(items)
<span class="hljs-comment"># 输出 [('b', '3')]</span>
</code></div></pre>
<h3><a id="6_write_71"></a>6. write写入</h3>
<h5><a id="1writew_72"></a>1.write写入有两种方式,一种是删除原文件内容,重新写入:w</h5>
<pre><div class="hljs"><code class="lang-python">cf.write(<span class="hljs-built_in">open</span>(cfgpath, “w”)) <span class="hljs-comment"># 删除原文件重新写入</span>
</code></div></pre>
<h5><a id="2a_77"></a>2.另外一种是在原文件基础上继续写入内容,追加模式写入:a</h5>
<pre><div class="hljs"><code class="lang-python">cf.write(<span class="hljs-built_in">open</span>(cfgpath, “a”)) <span class="hljs-comment"># 追加模式写入</span>
</code></div></pre>
<p>参考:<br />
https://blog.csdn.net/zhusongziye/article/details/80024530</p>
留言