怎么解决Python读取日志文件时报的错

  

问题描述:

写了一个读取日志文件的Python脚本:

 <代码> # - * -编码:utf - 8 - *
  进口操作系统
  进口numpy np
  文件=& # 39;D: \ pythonfile \ test.log& # 39;
  
  在开放(“test.log",“r"):
  ,代码,打印(线) 

但是在执行时报错:
执行代码报错:

 <代码>回溯(最近的电话):
  ,文件“D:/pythonfile/my-test225.py", 8号线,在& lt; module>
  ,在开放,(“test.log",“r"):
  UnicodeDecodeError: & # 39; gbk # 39;编解码器停下来# 39;t解码字节0 x80到位6946:非法多字节序列
  
  过程完成退出代码1  

报错如图:
怎么解决Python读取日志文件时报错

问题原因:

这是因为日志编码格式和读取日志的解码格式不一致导致的

问题解决:

<强>方法一,读取文件指定“编码=& # 39;utf - 8 # 39;:

 <代码> # - * -编码:utf - 8 - *
  进口操作系统
  进口numpy np
  文件=& # 39;D: \ pythonfile \ test.log& # 39;
  
  在开放(“test.log"“r",编码=& # 39;utf - 8 # 39;):
  ,代码,打印(线) 

<强>方法二,读取文件指定rb (rb以二进制读模式打开):

 <代码> # - * -编码:utf - 8 - *
  进口操作系统
  进口numpy np
  文件=& # 39;D: \ pythonfile \ test.log& # 39;
  
  #线开放(“test.log",“rb"):
  ,代码,打印(线) 

  

怎么解决Python读取日志文件时报的错