以前一直以为,改个扩展名就完事了。
会有编码的问题产生,最后导致乱码,或者转换后的文件损坏,无法打开等问题
自己写了个csv转xlsx的函数
import openpyxl
import csv
import xlwt
def csv2xls(): #csv转为xls excel97-2003版
with open('G:\\pystudy\\csv2xlsx\\a20210629.csv', 'r', encoding='utf-8') as f:
read = csv.reader(f)
# workbook = xlwt.Workbook()
# sheet = workbook.add_sheet('data') # 创建一个sheet表格
wb = openpyxl.Workbook()
ws = wb.active
# l = 0
for line in read:
print(line)
r = 0
for i in line:
print(i)
sheet.write(l, r, i) # 一个一个将单元格数据写入
r = r + 1
l = l + 1
workbook.save('G:\\pystudy\\csv2xlsx\\1.xlsx') # 保存Excel
def csv2xlsx(): #csv转为xlsx excel2007以上版本
with open('G:\\pystudy\\csv2xlsx\\a20210629.csv', 'r', encoding='utf-8') as f:
read = csv.reader(f)
wb = openpyxl.Workbook()
ws = wb.active
for line in read:
ws.append(line)
wb.save('G:\\pystudy\\csv2xlsx\\1.xlsx') # 保存Excel
if __name__ == '__main__':
csv2xlsx()