python文件打开,行处理
1)打开文件: 使用如下代码:
with open(file, "r",encoding = "utf-8",errors = "ignore") as file_p:
其中增加的encoding = "utf-8",表示要打开的文件的编码方式,errors 表示如果遇到解码错误的处理方式,其默认值 是strict,即遇到错误就报错,在项目开发过程中,如果不指定encoding方式和error处理方式, 使用系统默认的gbk 方式打开文件时,发现某些文件存在无法识别的错误,报错为“gbk codec can,t decode byte .. in position ...”,导致程序停止。
增加上述代码后,采取utf8 方式处理文件,并且在遇到错误时采取ignore方式,不报错,问题解决。
2)文件行处理
使用readlines() 将整个文件读进来之后,按行处理,for line in file_p.readlines():
这里总结几个常用的行处理函数:
line.strip(): 删除空余的空格,通常用于查找是否是空行,在删除多余的空格之后,该行的length为0 , 也可以输入指定的字符,用于将两侧的指定字符去掉。
len(line): 返回line的长度,可以结合strip使用确认是否是空行
line.find(“字符或者字符串”): 查找line中是否存在某些字符,如果找到,则返回索引值,索引值从0开始,如果找不到,则返回-1
line.startswith(“字符串”): 确认该行是否以指定的字符串开始
line.endswith("字符串"),确认改行是否以指定的字符串结束
line的其他函数可以使用dir(str)查看,根据需要取用
浙公网安备 33010602011771号