Python读取log文件报错“UnicodeDecodeError”
问题描述:
写了一个读取log文件的Python脚本:
# -*- coding:utf-8 -*- import os import numpy as np file = ‘D:\pythonfile\test.log‘ for line in open("test.log","r"): print(line)
但是在执行时报错:
执行代码报错:
Traceback (most recent call last): File "D:/pythonfile/my-test225.py", line 8, in <module> for line in open("test.log","r"): UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position 6946: illegal multibyte sequence Process finished with exit code 1
报错如图:
问题原因:
这是因为日志编码格式和读取日志的解码格式不一致导致的
问题解决:
方法一,读取文件指定“encoding=‘UTF-8‘:
# -*- coding:utf-8 -*- import os import numpy as np file = ‘D:\pythonfile\test.log‘ for line in open("test.log","r",encoding=‘UTF-8‘): print(line)
方法二,读取文件指定rb(rb 以二进制读模式打开):
# -*- coding:utf-8 -*- import os import numpy as np file = ‘D:\pythonfile\test.log‘ # for line in open("test.log","rb"): print(line)
相关推荐
zhuxue 2020-10-14
zhangbingb 2020-09-21
HeronLinuxampARM 2020-09-14
美丽的泡沫 2020-09-08
goodstudy 2020-08-19
luvhl 2020-08-17
littleFatty 2020-08-16
gamestart0 2020-08-15
URML 2020-08-15
sfkong 2020-08-02
82941732 2020-07-27
偏头痛杨 2020-07-18
timewind 2020-07-04
89407707 2020-06-27
xiaoxiaoCNDS 2020-06-26
lyjava 2020-06-26
运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算。以上实例中 7、5 和 12 是操作数。关系运算符用于计算结果是否为 true 或者 false。逻辑运算符用于测定变量或值之间的逻辑。
ChaITSimpleLove 2020-06-25
Strongding 2020-06-25