【Python】ConfigParser读取配置文件出现ConfigParser.MissingSectionHeaderError

本文介绍了一个关于使用Python的ConfigParser模块读取ini配置文件时遇到的问题及解决方法。当配置文件头部存在BOM(字节顺序标记)时,会导致ConfigParser解析错误并抛出MissingSectionHeaderError异常。文章提供了具体的解决步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述

Python下的一个脚本运行时报错,错误的提示为:
ConfigParser.MissingSectionHeaderError: File contains no section headers.
明显看到错误的原因是在ConfigParser,代码中ConfigParser是用来读取ini配置文件的。前几天用notepad++修改过一次配置文件【这里比较奇怪的是,之前修改配置文件的时候都没有遇到这个问题】。
搜了一下发现,这个问题还是一个常见问题,有很多解答。

问题原因

用ConfigParser读取配置文件的程序调用后发现文件头部被追加了信息:\xef\xbb\xbf,然后ConfigParser解析出错
\xef\xbb\xbf的出现原因:在Window下记事本、notepad++等文本编辑器编辑后,若保存为不同的编码格式会在文件开头加上BOM

UNICODE: \xFF\xFE
UTF-8:\xEF\xBB\xBF

解决方法

用notepad++将文件编码修改为以UTF-8无BOM格式编码,然后保存文件就行了。
notepad++修改编码

参考:

ConfigParser读取记事本、notepad++修改后的配置文件会出现:ConfigParser.MissingSectionHeaderError
ConfigParser读取记事本修改后的配置文件出错问题解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值