txt转化csv的接口(子函数)

Python 2.7
IDE Pycharm 5.0.3
pyExcelerator 0.6.4.1


目的

将txt转化为csv格式


准备工作

安装pyExcelerator包

  • 推荐在cmd窗口使用pip install pyExcelerator
  • 或者百度pyExcelerator github下载zip解压后,cmd切换到解压目录,执行输入python setup.py install,还不明白就百度把,一抓一大把,不在赘述

接口代码

首先新建一个py文件,我以txt2excel.py为例(csv之后直接另存为excel就行,主要是csv比较通用,这个名字随便取,只要调用时候用到就可以了),输入以下内容:

# -*- coding: utf-8 -*-
from pyExcelerator import *
import time
def txt2csv(readpath,writepath,delimiter="\t"):
    start_time = time.time()
    try:
        f = open(readpath)
        lines = f.readlines()
        w = Workbook()
        sheet1 = w.add_sheet("Sheet1")
        i = 0
        for line in lines:
            linesplist = line.strip().split(delimiter)
            j = 0
            for linesp in linesplist:
                sheet1.write(i,j,linesp.strip().decode('utf-8')) # 需要转化才能存储
                j += 1
            i +=1
        w.save(writepath) 
    except Exception as ex:
        print ex
    finally:
        end_time = time.time()
        print "Done! it costs %.2f sec"%(end_time-start_time)

# 测试使用
if __name__ == '__main__':
    readpath = "C:\\Users\\MrLevo\\Desktop\\AL_Toolbox\\datacombinlabel.txt"
    writepath = "C:\\Users\\MrLevo\\Desktop\\AL_Toolbox\\datacombinlabel.csv"
    txt2csv(readpath,writepath,"\t")

接口说明

txt2excel.txt2csv(readpath,writepath,delimiter="\t")
# readpath是需要转换的txt路径
# writepath是需要写入的csv路径
# delimiter是txt中的字符分割类型,如果是","那么直接另存为csv就可以,不用调用函数,如果是" "就是tab的制表分隔符,则需要用此函数了。在delimiter处写"\t"就可以了

接口(函数)调用实例

在同一工程目录下的另一个py文件中只需要操作如下

import txt2excel # 导入包
txt2excel.txt2csv("C:\\Users\\MrLevo\\Desktop\\txt2csv.txt","C:\\Users\\MrLevo\\Desktop\\txt2csv.csv",",")

执行效果

txt转化csv的接口(子函数)_第1张图片
这里写图片描述

你可能感兴趣的:(txt转化csv的接口(子函数))