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
ソースコードの実行:
#-*- 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