【解決方案】編碼問題:UnicodeDecodeError: 'XXX' codec can't decode byte 0xad in position...的錯誤


#coding:utf-8

file = open("test.txt")
for line in file:
	print (line)
file.close()

報錯:UnicodeDecodeError: 'gbk' codec can't decode byte 0xad in position...

解決:

file = open("test.txt")  -->
file = open("test.txt",encoding='utf-8')
即:
#coding:utf-8

file = open("test.txt",encoding='utf-8')
for line in file:
	print (line)
file.close()

說明:

#!/usr/bin/env python   #設置Python解釋器,告訴系統這是一個python程序
# -*- coding: UTF-8 -*-   #聲明文件編碼為utf-8;代碼文件存儲時一定要將文件編碼設為與開頭的文件編碼聲明一致的編碼

                                     #代碼中的字符串的默認編碼與代碼文件本身的編碼是一致的

python的內部編碼時unicode,與文件本身的編碼無關

file = open("test.txt",encoding='utf-8') #以指定的編碼類型(即文件本身的編碼)打開文件,chardet庫可以判斷文件編碼類型

參考:http://changfengmingzhi.blog.163.com/blog/static/1671052882013127105225964/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM