convert-csv-to-xlsx.py 文件源码

python
阅读 30 收藏 0 点赞 0 评论 0

项目:traffic-map 作者: leighklotz 项目源码 文件源码
def main(output_filename):
    workbook = openpyxl.Workbook()
    worksheet = workbook.active
    column_widths = defaultdict(int)
    for csvfile in glob.glob(os.path.join('.', '*.csv')):
        with open(csvfile, 'rb') as f:
            title = os.path.basename(csvfile).replace('.csv', '')
            worksheet.title = title
            reader = csv.reader(f, delimiter='\t')
            headers = None
            for r, row in enumerate(reader, start=1):
                if headers is None:
                    if not row[0].startswith('#'):
                        headers = [ header_type(key) for key in row ]
                for c, val in enumerate(row, start=1):
                    nv = numberize(val)
                    cell = worksheet.cell(row=r, column=c)
                    cell.value = nv
                    column_widths[c] = max(column_widths[c], string_width(nv))
        for col,column_width in column_widths.items():
            worksheet.column_dimensions[column_name(col)].width = column_width + 1
        worksheet = workbook.create_sheet()
        cols = set()
    workbook.save(output_filename)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号