从 csv 转换为 excel 时布局错误
Wrong layout when converting from csv to excel
我有以下代码,但输出显示不正确。
关于为什么会导致这种情况的任何想法。我在 Linux
中没有这个问题
我尝试添加:encoding="utf-8"
但这并没有解决问题。
import csv
import openpyxl
wb = openpyxl.Workbook()
ws = wb.active
f = open('C:\HAHA.csv')
reader = csv.reader(f, delimiter=':')
for row in reader:
ws.append(row)
f.close()
wb.save('C:\HAHA.xlsx')
您告诉 csv
模块使用 :
作为分隔符,而您的实际文件使用(标准)逗号来分隔记录。
f = open('C:\HAHA.csv')
reader = csv.reader(f)
此外,根据您的 Python 版本,您应该在打开文件时使用换行参数或 rb 模式。阅读 csv
module (Python 2) or the csv
module (Python 3)
的文档
您的分隔符是 ,
而不是 :
:
import csv
import openpyxl
wb = openpyxl.Workbook()
ws = wb.active
with open('C:\HAHA.csv') as f:
reader = csv.reader(f, delimiter=',')
for row in reader:
ws.append(row)
wb.save('C:/HAHA.xlsx')
我有以下代码,但输出显示不正确。 关于为什么会导致这种情况的任何想法。我在 Linux
中没有这个问题我尝试添加:encoding="utf-8"
但这并没有解决问题。
import csv
import openpyxl
wb = openpyxl.Workbook()
ws = wb.active
f = open('C:\HAHA.csv')
reader = csv.reader(f, delimiter=':')
for row in reader:
ws.append(row)
f.close()
wb.save('C:\HAHA.xlsx')
您告诉 csv
模块使用 :
作为分隔符,而您的实际文件使用(标准)逗号来分隔记录。
f = open('C:\HAHA.csv')
reader = csv.reader(f)
此外,根据您的 Python 版本,您应该在打开文件时使用换行参数或 rb 模式。阅读 csv
module (Python 2) or the csv
module (Python 3)
您的分隔符是 ,
而不是 :
:
import csv
import openpyxl
wb = openpyxl.Workbook()
ws = wb.active
with open('C:\HAHA.csv') as f:
reader = csv.reader(f, delimiter=',')
for row in reader:
ws.append(row)
wb.save('C:/HAHA.xlsx')