tony_python excel学習第一課
昨日一晩中やって、やっとpythonがexcelを読むプログラムのデバッグに合格しました.今、記録しておきます.
主にpyxllとopenpyxlの2つのモジュールを試してみました
1.pyxllはexcel 2010をサポートしていると言われていますが、提供されている例を見てみると、主にexcelを操作するセルを主としています.私は主にexcelを読んでセルの内容を解析することに注目しています.
このブロックはdemoプログラムから見るとインスタンスがないようです
最初はどのようにこのモジュールをインストールするか分からないで、しばらく振り回して、直接このパッケージの中のpyxllを発見しました.pyインストールディレクトリC:Python 26Libにコピーして実行できます
それから私は目標から少し離れていることに気づいて、深く研究しなかった.
2.openpyxl-1.5.2
私の環境:win 7 python 2.6
Openpyxlのインストール
http://packages.python.org/an_example_pypi_project/setuptools.html
上記の公式ドキュメントを参照して、
1)Webサイトへhttp://pypi.python.org/pypi/setuptoolssetuptoolsをダウンロードし、setuptoolsをインストール
2)window cmdウィンドウに、Cdをダウンロードしたopenpyxl-1.5.2ディレクトリに、pythonを実行します.exe setup.py install
あるいはpython.exe setup.py bdist_wininstは1つを手に入れた.Exceインストールパッケージ
3)インストールOK
ソースコードの実行:
出力結果:
Worksheet range(s): []Worksheet name(s): ['Sheet1', 'Sheet2', 'Sheet3']Work Sheet Titile: Sheet1Work Sheet Rows: 1Work Sheet Cols: 1Total:1
主にpyxllとopenpyxlの2つのモジュールを試してみました
1.pyxllはexcel 2010をサポートしていると言われていますが、提供されている例を見てみると、主にexcelを操作するセルを主としています.私は主にexcelを読んでセルの内容を解析することに注目しています.
このブロックはdemoプログラムから見るとインスタンスがないようです
最初はどのようにこのモジュールをインストールするか分からないで、しばらく振り回して、直接このパッケージの中のpyxllを発見しました.pyインストールディレクトリC:Python 26Libにコピーして実行できます
それから私は目標から少し離れていることに気づいて、深く研究しなかった.
2.openpyxl-1.5.2
私の環境:win 7 python 2.6
Openpyxlのインストール
http://packages.python.org/an_example_pypi_project/setuptools.html
上記の公式ドキュメントを参照して、
1)Webサイトへhttp://pypi.python.org/pypi/setuptoolssetuptoolsをダウンロードし、setuptoolsをインストール
2)window cmdウィンドウに、Cdをダウンロードしたopenpyxl-1.5.2ディレクトリに、pythonを実行します.exe setup.py install
あるいはpython.exe setup.py bdist_wininstは1つを手に入れた.Exceインストールパッケージ
3)インストールOK
ソースコードの実行:
#-*- coding:utf-8 -*
from openpyxl.reader.excel import load_workbook
import time
#
startTime = time.time()
# excel2007
wb = load_workbook(filename = r'demo.xlsx')
#
print "Worksheet range(s):", wb.get_named_ranges()
print "Worksheet name(s):", wb.get_sheet_names()
#
sheetnames = wb.get_sheet_names()
ws = wb.get_sheet_by_name(sheetnames[0])
# , ,
print "Work Sheet Titile:",ws.title
print "Work Sheet Rows:",ws.get_highest_row()
print "Work Sheet Cols:",ws.get_highest_column()
#
data_dic = {}
#
for rx in range(ws.get_highest_row()):
temp_list = []
pid = ws.cell(row = rx,column = 0).value
w1 = ws.cell(row = rx,column = 1).value
w2 = ws.cell(row = rx,column = 2).value
w3 = ws.cell(row = rx,column = 3).value
w4 = ws.cell(row = rx,column = 4).value
temp_list = [w1,w2,w3,w4]
data_dic[pid] = temp_list
#
print 'Total:%d' %len(data_dic)
出力結果:
Worksheet range(s): []Worksheet name(s): ['Sheet1', 'Sheet2', 'Sheet3']Work Sheet Titile: Sheet1Work Sheet Rows: 1Work Sheet Cols: 1Total:1