將多個csv文件合成一個execl文件

1.需求

  從數據庫中導出了幾個csv文件,但是需要一個execl文件,每張表名以csv文件名命名即可


2.準備工作

  1)安裝pip

  https://pypi.python.org/pypi/pip

  tar zxvf pip-8.1.2.tar.gz

  cd pip-8.1.2

  python setup.py install


  2)安裝xlwt

  https://pypi.python.org/pypi/xlwt/

  tar zxvf xlwt-1.1.2.tar.gz

  cd xlwt-1.1.2

  pip install xlwt


3.腳本內容

#!/usr/bin/env python
#encoding=utf-8
import os
import xlwt 
import csv

def write_execl(csvfile, xlsfile, workbook, sheetname):
    #創建表名,添加一個workbook的對象
    sheet = workbook.add_sheet(sheetname)
    #讀取csv文件內容,寫入表
    reader = csv.reader(open(csvfile, 'r'))
    i = 0
    for content in reader:
        for j in range(len(content)):
            sheet.write(i, j, content[j])
            j += 1
        i += 1

#目標execl文件名
xlsfile = './result.xls'
#初始化workbook對象
workbook = xlwt.Workbook()

#創建當前目錄下文件列表
filelist = sorted(os.listdir('./'))
for file in filelist:
    #匹配以csv結尾的文件
    if file.endswith('.csv'):
        #匹配出表名    
        sheetname = file.replace('.csv', '')
        #使用函數將csv文件內容導入到execl
        write_execl(file, xlsfile, workbook, sheetname)

workbook.save(xlsfile)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章