python 2.7 操作 excel


可以使用 openpyxl、pandas、openpyxl、xlsxwriter、xlwings、pywin32、 xlrd or xlwt 等py庫 進行excel讀寫;

以下通過 xlrd 和 xlwt

pip install xlrd

pip install xlwt

import xlrd

#
1、打開文件 exceld = xlrd.open_workbook(excelpath) # 2、獲取表單對象 print '表單名字:', exceld.sheet_names() print '表單數量:', exceld.nsheets print '表單對象:', exceld.sheets() print '通過名字查找:', exceld.sheet_by_name("test") print '通過索引查找:', exceld.sheet_by_index(0) data = xlrd.open_workbook(excelpath) table = data.sheet_by_index(0) for rowCount in range(table.nrows): val = (table.row_values(rowCount)) for v in val: print v

這就完成了對excel基本數據的遍歷

API: https://xlrd.readthedocs.io/en/latest/api.html#module-xlrd

 

Demo:讀取 身份證號碼判斷年齡大於60歲 寫入另一個xls

#coding:utf-8
import xlrd
import xlwt

excelpath = "E:\\xyldy.xls"
excel_retpath = "E:\\result.xls"

# 1、打開文件
exceld = xlrd.open_workbook(excelpath)

# 2、讀取數據
data = xlrd.open_workbook(excelpath)
# 選擇表單
table = data.sheet_by_index(0)

# 3、准備寫結果xls 添加結果表單
workbook = xlwt.Workbook()
sheet = workbook.add_sheet("result")

# 4、讀取 身份證號碼判斷年齡大於60歲 寫入結果
for rowCount in range(table.nrows):
    val = (table.row_values(rowCount))
    a = val[2][6:10].encode("utf-8")
    if len(a) == 4:
        year = int(a)
        
        if (2020 - year) > 60:
            for i in range(0, len(val)):
                sheet.write(index, i, val[i])
            index = index + 1
        else:
            print "age = " + str((2020 - year)) 
    else:
        print a

# 5、保存文件
workbook.save(excel_retpath) 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM