Python Excel相关

需要的库

1、xlrd

xlrd xlwt xlutils都是用来处理xls格式的excel,xlrd是读取,xlwt是生成新的文档,xlutils提供复制等功能
我需要处理的是读取xls格式的文件,然后进行处理并保存到其他文件,所以这里只使用xlrd来读取文件

2、openpyxl

可以处理xlsx格式的文件,无法处理xls格式,可以同时读写文件,这里用来保存数据

基本用法

1、读取相关

import xlrd
wb = xlrd.open_workbook('a.xls')
ws = wb.sheets()[0]
#ws = wb.sheet_by_index(0)
#ws = wb.sheet_by_name('sheet one')
nrow = ws.nrows # 当前sheet的总行数
ncol = ws.ncols # 当前sheet的总列数
row_value = ws.row_values(0) # 取整行数值,返回list
col_value = ws.col_values(0) # 取整列数值,返回list
lrow = ws.row_len(0) # 当前行的列数
lcol = ws.col_len(0) # 当前列的行数
import openpyxl
wb = openpyxl.load_workbook('a.xlsx')
ws = wb.active
# 获取单个cell的值
for row in ws['A1':'C2']:
    for cell in row:
        print cell.value
# 获取整行数值
row_value = []
for cell in ws['1']: # ws['A']
    row_value.append(cell.value)
# 获取总行列数
nrow = 0
ncol = 0
for i in sheet_new.rows:
    nrow += 1
for i in sheet_new.columns:
    ncol += 1
print nrow, ncol

2、写入相关

# 一个cell一个cell来写
import openpyxl
wb = openpyxl.load_workbook('a.xlsx')
ws = wb.active
for row in ws['A1':'C2']:
    for cell in row:
        cell.value = 0
# 整行添加
ws.append([1,2,3])
# 保存
wb.save('a.xlsx')

你可能感兴趣的:(python)