python删除文件最后一行

今天在修改数据分析平台的BUG时候,发现两个历史遗留问题。

  1. 不能加载中文文件
  2. csv中最后一行都是空行

严重的是第二个问题,因为在写文件的时候都是这样写的

line = "somethings you want to write"+"\n"1

因此,每个文件最后都有一个空行。在前端显示的时候老出现type i is undefined前端显示文件我用的datatable这个jQuery库,正常显示都是这样的
python删除文件最后一行_第1张图片

但是因为有一个空行就不能分页,因为在遍历的时候,遇到的item都不一样
最后的解决方案是这样的:

  1. 读取文件
  2. 直接定位到最后一个字符
  3. 向上读一个字符
  4. 判断是否是”\n”
  5. 执行删除
  6. 关闭文件

具体的代码如下:

# -*- coding: utf-8 -*-
"""
Created on Wed Aug 23 10:04:25 2017

@author: APAC
"""
import os
f = open("Take.csv","rb+")
f.seek(-1 ,os.SEEK_END)
if f.next() == "\n":
    f.seek(-1 ,os.SEEK_END)
    f.truncate()
f.close()12345678910111213

实际测试效率还可以

转载自:https://blog.csdn.net/he_min/article/details/77500798

你可能感兴趣的:(Python语言)