Python如何读取 .ini 格式文件(代码)

本篇文章给大家带来的内容是关于python如何读取 .ini 格式文件(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

大家应该接触过.ini格式的配置文件。配置文件就是把一些配置相关信息提取出去来进行单独管理,如果以后有变动只需改配置文件,无需修改代码。特别是后续做自动化的测试,需要拎出一部分配置信息,进行管理。比如说发送邮件的邮箱配置信息、数据库连接等信息。

今天介绍一些如何用Python读取ini配置文件。

一、ini文件格式

格式如下:

; comments[section1]Param1 = value1Param2= value2[section2]Param3= value3Param4= value4

登录后复制

[section]:ini的section模块,是下面参数值的一个统称,方便好记就行。

立即学习“Python免费学习笔记(深入)”;

Param = value:参数以及参数值。

ini 文件中,使用“;”进行注释。

二、读取ini文件

Python自带有读取配置文件的模块ConfigParser,配置文件不区分大小写。
有一系列的方法可提供。

read(filename):读取文件内容

sections():得到所有的section,并以列表的形式返回。

options(section):得到该section的所有option。

items(section):得到该section的所有键值对。

get(section,option):得到section中option的值,返回string类型。

getint(section,option):得到section中option的值,返回int类型。

举个栗子:

import osimport configparser# 当前文件路径proDir = os.path.split(os.path.realpath(__file__))[0]# 在当前文件路径下查找.ini文件configPath = os.path.join(proDir, "config.ini")print(configPath)conf = configparser.ConfigParser()# 读取.ini文件conf.read(configPath)# get()函数读取section里的参数值name  = conf.get("section1","name")print(name)print(conf.sections())print(conf.options('section1'))print(conf.items('section1'))

登录后复制

运行结果:

D:Python_projectpython_learningconfig.ini2号['section1', 'section2', 'section3', 'section_test_1']['name', 'sex', 'option_plus'][('name', '2号'), ('sex', 'female'), ('option_plus', 'value')]

登录后复制

三、修改并写入ini文件

write(fp):将config对象写入至某个ini格式的文件中。

add_section(section):添加一个新的section。

set(section,option,value):对section中的option进行设置,需要调用write将内容写入配置文件。

remove_section(section):删除某个section。

remove_option(section,option):删除某个section下的option

举个栗子:接上部分

# 写入配置文件 set()# 修改指定的section的参数值conf.set("section1",'name','3号')# 增加指定section的optionconf.set("section1","option_plus","value")name = conf.get("section1","name")print(name)conf.write(open(configPath,'w+'))# 增加sectionconf.add_section("section_test_1")conf.set("section_test_1","name","test_1")conf.write(open(configPath,'w+'))

登录后复制

相关推荐:

一个非常完美的读写ini格式的PHP配置类分享,读写ini格式php

python读写ini文件示例(python读写文件)

以上就是Python如何读取 .ini 格式文件(代码)的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2261238.html

(0)
上一篇 2025年2月27日 06:07:17
下一篇 2025年2月19日 22:43:17

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Python中线程终止与挂起的实现方法

    本篇文章给大家带来的内容是关于Python中线程终止与挂起的实现方法,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 线程没有任何方法可用于强制终止或挂起。这是设计上的原因,因为编写线程程序本身十分复杂。例如:如果某个线程已…

    编程技术 2025年2月27日
    200
  • Python线程下条件变量的用法

    本篇文章给大家带来的内容是关于python线程中条件变量的用法,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 条件变量时构建在另一个锁上的同步原语,当需要线程关注特定的状态变化或事件发生时将使用这个锁。典型的用法是生产者与…

    编程技术 2025年2月27日
    200
  • Python线程下事件用法的简单介绍

    本篇文章给大家带来的内容是关于Python线程下事件的用法介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 事件用于在线程之间通信。一个线程发送【事件】信号,一个或多个其他线程等待它。 Event实例管理着一个内部标志,…

    编程技术 2025年2月27日
    200
  • Python多线程共享全局变量的实现代码

    本篇文章给大家带来的内容是关于python多线程共享全局变量的实现代码,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 在一个进程内的所有线程共享全局变量。但多线程对全局变量的更改会导致变量值得混乱。 实例:验证同一个进程内…

    编程技术 2025年2月27日
    200
  • Python线程下thread对象的用法介绍(附实例)

    本篇文章给大家带来的内容是关于python线程下thread对象的用法介绍(附实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 Thread对象 Thread类用于表示单独的控制线程。 语法: t=Thread(gro…

    2025年2月27日
    200
  • Python线程下信号量与有边界的信号量的介绍

    本篇文章给大家带来的内容是关于python线程下信号量与有边界的信号量的介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 信号量与有边界的信号量 信号量是一个基于计数器的同步原语,每次调用acquire()方法时,此计数…

    编程技术 2025年2月27日
    200
  • Python多线程的应用(附实例)

    本篇文章给大家带来的内容是关于python多线程的应用(附实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 在引入多线程之前,我们先来看一个非常简单的实例。 实例: #单线程实例import timedef mark(…

    2025年2月27日
    200
  • Python线程下Timer对象、Lock对象和Rlock对象的简单介绍

    本篇文章给大家带来的内容是关于python线程下timer对象、lock对象和rlock对象的简单介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 Timer对象、Lock对象、Rlock对象 Timer对象 Timer…

    编程技术 2025年2月27日
    200
  • Python线程下使用锁该注意的地方

    本篇文章给大家带来的内容是关于python线程下使用锁该注意的地方,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 使用诸如Lock、RLock、Semphore之类的锁原语时,必须多加小心,锁的错误使用很容易导致死锁或相互…

    编程技术 2025年2月27日
    200
  • Python线程下queue(队列)模块的用法(附实例)

    本篇文章给大家带来的内容是关于python线程下queue(队列)模块的用法,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 queue模块实现了各种【多生产者-多消费者】队列。可用于在执行的多个线程之间安全的交换信息。 q…

    编程技术 2025年2月27日
    200

发表回复

登录后才能评论