Pythonがlogファイルを読み込んで「UnicodeDecodeError」とエラーを報告
1154 ワード
問題の説明:
ログファイルを読み込むPythonスクリプトを書きました.
ただし、実行時エラー:実行コードエラー:
エラーを図のように報告します.
問題の原因:
これは、ログ符号化フォーマットと読み出しログの復号フォーマットが一致しないためである
問題解決:
メソッド1、ファイルを読み込むには「encoding='UTF-8」を指定します.
方法2、読取ファイル指定rb(rbはバイナリ読取モードで開く):
ログファイルを読み込む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
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
エラーを図のように報告します.
問題の原因:
これは、ログ符号化フォーマットと読み出しログの復号フォーマットが一致しないためである
問題解決:
メソッド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)
方法2、読取ファイル指定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)