我正在尝试在编辑器(VIM)中打开的文件的内容。
Id est:
fileh = open( path, 'r' )
content = fileh.read()
fileh.close()
在VIM中打开文件时,会导致错误。 如果VIM对文件持有独占锁,我可以理解这一点,但根据错误消息,情况似乎并非如此:
UnicodeDecodeError: 'ascii' codec can't decode byte 0x80 in position 16: ordinal not in range(128)
在我看来,VIM在打开的文件中写了一个非ascii字符!
使用open( path, 'r', encoding='utf-8')
或utf-16打开文件似乎没有办法(发生utf-8 / utf-16解码错误)。
感谢任何帮助!
更新:当我在Gedit而不是VIM中打开文件时,不会发生此问题。当然这不是解决方法,所以我仍然需要找出问题所在。
答案 0 :(得分:0)
问题不在于python无法解码我感兴趣的文件,而是python读取.swp文件,由VIM生成。我的程序没有正确过滤输入目录。
感谢您的帮助!