我可能有一个相当简单的问题.但是,我刚刚开始使用python,它只会让我发疯.我按照书的说明,想打开一个简单的文本文件.我正在使用的代码:
import sys
try:
d = open("p0901aus.txt" , "W")
except:
print("Unsucessfull")
sys.exit(0)
Run Code Online (Sandbox Code Playgroud)
我要么得到消息,要么打开文件或弹出显示说:
(unicode eror)'unicodeescape'编解码器无法解码2-4位的字节:截断\ UXXXXXXXX转义
我不知道问题是什么.我试图用不同的代码保存文档,尝试不同的路径......总是同样的问题
有人知道任何帮助吗?
非常感谢你提前,
georg ps:我正在使用windows vista
(unicode eror)'unicodeescape'编解码器无法解码2-4位的字节:截断\ UXXXXXXXX转义
这可能意味着您尝试读取的文件不在open()期望的编码中.显然open()需要一些Unicode编码(很可能是UTF-8或UTF-16),但是你的文件不是这样编码的.
您通常不应该使用plain open()来读取文本文件,因为如果不指定编码,就无法正确读取文本文件(除非它是纯ASCII).
改为使用编解码器:
import codecs
fileObj = codecs.open( "someFile", "r", "utf-8" )
u = fileObj.read() # Returns a Unicode string from the UTF-8 bytes in the file
Run Code Online (Sandbox Code Playgroud)