真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

將Excel文件轉(zhuǎn)為csv文件的python腳本

#!/usr/bin/env python 
__author__ = "lrtao2010"
'''
Excel文件轉(zhuǎn)csv文件腳本
需要將該腳本直接放到要轉(zhuǎn)換的Excel文件同級目錄下
支持xlsx 和 xls 格式
在同級目錄下生成名為excel_to_csv.csv 的文件,采用UTF-8編碼
'''
import xlrd
import csv
import os
#生成的csv文件名
csv_file_name = 'excel_to_csv.csv'
def get_excel_list():
    #獲取Excel文件列表
    excel_file_list = []
    file_list = os.listdir(os.getcwd())
    for file_name in file_list:
        if file_name.endswith('xlsx') or file_name.endswith('xls'):
            excel_file_list.append(file_name)
    return excel_file_list
def get_excel_header(excel_name_for_header):
    #獲取表頭,并將表頭全部變?yōu)樾?    workbook = xlrd.open_workbook(excel_name_for_header)
    table = workbook.sheet_by_index(0)
    #row_value = table.row_values(0)
    row_value = [i.lower() for i in table.row_values(0)]
    return row_value
def read_excel(excel_name):
    #讀取Excel文件每一行內(nèi)容到一個列表中
    workbook = xlrd.open_workbook(excel_name)
    table = workbook.sheet_by_index(0) #讀取第一個sheet
    nrows = table.nrows
    ncols = table.ncols
    # 跳過表頭,從第一行數(shù)據(jù)開始讀
    for rows_read in range(1,nrows):
        #每行的所有單元格內(nèi)容組成一個列表
        row_value = []
        for cols_read in range(ncols):
            #獲取單元格數(shù)據(jù)類型
            ctype = table.cell(rows_read, cols_read).ctype
            #獲取單元格數(shù)據(jù)
            nu_str = table.cell(rows_read, cols_read).value
            #判斷返回類型
            # 0 empty,1 string, 2 number(都是浮點(diǎn)), 3 date, 4 boolean, 5 error
            #是2(浮點(diǎn)數(shù))的要改為int
            if ctype == 2:
                nu_str = int(nu_str)
            row_value.append(nu_str)
        yield row_value

def xlsx_to_csv(csv_file_name,row_value):
    #生成csv文件
    with open(csv_file_name, 'a', encoding='utf-8',newline='') as f: #newline=''不加會多空行
        write = csv.writer(f)
        write.writerow(row_value)
if __name__ == '__main__':
    #獲取Excel列表
    excel_list = get_excel_list()
    #獲取Excel表頭并生成csv文件標(biāo)題
    xlsx_to_csv(csv_file_name,get_excel_header(excel_list[0]))
    #生成csv數(shù)據(jù)內(nèi)容
    for excel_name in  excel_list:
        for row_value in read_excel(excel_name):
            xlsx_to_csv(csv_file_name,row_value)
    print('Excel文件轉(zhuǎn)csv文件結(jié)束 ')

本文標(biāo)題:將Excel文件轉(zhuǎn)為csv文件的python腳本
文章源于:http://weahome.cn/article/iggese.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部