Python如何去掉文件头信息
Python如何去掉文件头信息
utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码。
其实UTF-8 的BOM对UFT-8没有作用,是为了支援UTF-16,UTF-32才加上的BOM,BOM签名的意思就是告诉编辑器当前文件采用何种编码,方便编辑器识别,但是BOM虽然在编辑器中不显示,但是会产生输出,就像多了一个空行。
类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。
当在读txt时一旦读到BOM头就会报错。
处理方法如下:
import codecs with open(file_path, "r") as file: data = file.read() data = data.replace(codecs.BOM_UTF8, "") districtlist = data.split(‘ ‘) file.closed
Python中文网,大量云海天Python教程,欢迎学习!
来源:PY学习网:原文地址:https://www.py.cn/article.html