この投稿には、csv から xls に変換する Python の例があります。
ただし、私のファイルには 65536 行を超える行があるため、xls は機能しません。ファイルに xlsx という名前を付けても、違いはありません。xlsx に変換する Python パッケージはありますか?
私のライブラリpyexcel
で、
$ pip install pyexcel pyexcel-xlsx
1 つのコマンド ラインで実行できます。
from pyexcel.cookbook import merge_all_to_a_book
# import pyexcel.ext.xlsx # no longer required if you use pyexcel >= 0.2.2
import glob
merge_all_to_a_book(glob.glob("your_csv_directory/*.csv"), "output.xlsx")
各csvには独自のシートがあり、名前はファイル名になります。
openpyxl libで行う方法:
import csv
from openpyxl import Workbook
def convert_csv_to_xlsx(self):
wb = Workbook()
sheet = wb.active
CSV_SEPARATOR = "#"
with open("my_file.csv") as f:
reader = csv.reader(f)
for r, row in enumerate(reader):
for c, col in enumerate(row):
for idx, val in enumerate(col.split(CSV_SEPARATOR)):
cell = sheet.cell(row=r+1, column=idx+1)
cell.value = val
wb.save("my_file.xlsx")