python ini文件包含中文时报错UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x8c 的解决办法

简介: python ini文件包含中文时报错UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x8c 的解决办法

一、前置说明


比如你想在pytest.ini文本中使用中文做一些注释说明:

[pytest]
# 在运行 Pytest 时的一些额外选项
# -v 表示详细输出,显示更详细的测试结果
# -s 表示在控制台输出标准输出(print 语句)
addopts = -v -s
# log_cli = 1 表示启用在控制台输出日志,1 表示启用,0 表示禁用
log_cli = 1
# log_cli_level = DEBUG 表示在控制台输出的日志的级别为 DEBUG
log_cli_level = DEBUG
# log_cli_format 定义了在控制台输出的日志的格式
# %(asctime)s 表示日志的时间戳
# %(filename)s 表示产生日志的文件名
# %(lineno)d 表示产生日志的代码行号
# %(funcName)s 表示产生日志的函数名
# %(levelname)s 表示日志的级别(例如,INFO、DEBUG、ERROR)
# %(message)s 表示实际的日志消息
log_cli_format = %(asctime)s - %(filename)s:%(lineno)d - %(funcName)s - %(levelname)s - %(message)s

但是运行时,会提示:

UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0x8c in position 20: illegal multibyte sequence


二、解决办法


问题原因:IniConfig类解析文件时没有指定encoding='utf-8'。解决办法就是在错误日志中点击连接跳转至iniconfig的__init__.py文件f = open(self.path)修改为f = open(self.path, encoding='utf-8')

选择强制修改,然后重启IDE即可。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
26天前
|
Python
【python】python跨文件使用全局变量
【python】python跨文件使用全局变量
|
1月前
|
监控 数据处理 索引
使用Python批量实现文件夹下所有Excel文件的第二张表合并
使用Python和pandas批量合并文件夹中所有Excel文件的第二张表,通过os库遍历文件,pandas的read_excel读取表,concat函数合并数据。主要步骤包括:1) 遍历获取Excel文件,2) 读取第二张表,3) 合并所有表格,最后将结果保存为新的Excel文件。注意文件路径、表格结构一致性及异常处理。可扩展为动态指定合并表、优化性能、日志记录等功能。适合数据处理初学者提升自动化处理技能。
23 1
|
3天前
|
JSON JavaScript 数据格式
python遍历目录文件_结合vue获取所有的html文件并且展示
python遍历目录文件_结合vue获取所有的html文件并且展示
4 0
|
10天前
|
存储 Python
用Python实现批量下载文件——代理ip排除万难
用Python实现批量下载文件——代理ip排除万难
|
10天前
|
JSON 关系型数据库 数据库
《Python 简易速速上手小册》第6章:Python 文件和数据持久化(2024 最新版)
《Python 简易速速上手小册》第6章:Python 文件和数据持久化(2024 最新版)
38 0
|
10天前
|
数据挖掘 索引 Python
Python 读写 Excel 文件
Python 读写 Excel 文件
12 0
|
10天前
|
数据安全/隐私保护 Python
Python文件与目录操作:面试中的高频考点
【4月更文挑战第15天】本文介绍了Python文件和目录操作的面试重点,包括文件的读写、目录遍历及权限管理。强调了文件关闭、异常处理、特殊文件判断以及权限位和权限字符串的理解。提供了代码示例,如读写文件、遍历目录和更改文件权限,帮助读者在面试中表现出色。掌握这些技能将对编程求职之路大有裨益。
17 0
|
11天前
|
存储 监控 开发工具
对象存储OSS产品常见问题之python sdk中的append_object方法支持追加上传xls文件如何解决
对象存储OSS是基于互联网的数据存储服务模式,让用户可以安全、可靠地存储大量非结构化数据,如图片、音频、视频、文档等任意类型文件,并通过简单的基于HTTP/HTTPS协议的RESTful API接口进行访问和管理。本帖梳理了用户在实际使用中可能遇到的各种常见问题,涵盖了基础操作、性能优化、安全设置、费用管理、数据备份与恢复、跨区域同步、API接口调用等多个方面。
46 9
|
26天前
|
C++ Python
【C++/Python】C++调用python文件
【C++/Python】C++调用python文件
|
26天前
|
JSON 数据处理 数据格式
Python中的文件读写操作详解
【4月更文挑战第2天】在Python中,文件读写操作是数据处理和程序开发的重要部分。通过文件,我们可以将信息持久化地保存在磁盘上,并在需要时读取和使用这些数据。Python提供了丰富的内置函数和模块,使得文件读写变得简单而高效。本文将详细介绍Python中文件读写的基本操作和常用方法。