マスターブロッサムゴリスーツ

山田くん座布団5億枚

(Python3.3.1)xlrdを使って、エクセルをcsv形式で書き出した

#xlrdモジュールをpython3に入れる方法は他を当たって下さい
#python3じゃないとrange()とlist()のネストする部分とかうまくいかないかも
エクセルファイルを読み込んで、シート名.csv というcsv形式で吐き出します。



#!/usr/bin/python
# - * - coding: UTF-8 - * -

import xlrd

#xlsfileはエクセルファイルへのパス
xlsfile = 'example.xls'
#savedirはcsvファイルの保存先
savedir = '/(´・ω・`)/(`・ω・´)/'
book = xlrd.open_workbook(xlsfile)
 for i in list(range(book.nsheets)):
  sheet = book.sheet_by_index(i)
  name = book.sheet_names()
  f = open(savedir+name[i]+'.csv', 'w')
  for row in list(range(sheet.nrows)):
   for col in list(range(sheet.ncols)):
    s = str(sheet.cell_value(row,col))
    if col < sheet.ncols-1:
   f.write(s+',')
    else:
     f.write(s+'\n')
  f.close()

これで動く

$ python test.py