python--openpyxl模块使用, 对excel表格的操作

一.安装

二.使用

  python中对excel表格操作的插件有很多,比如xlwd\xlrt. 而openpyxl只支持excel03之后的版本

 1.写入

from openpyxl import Workbook

wb = Workbook()

#创建工作簿
wb1 = wb.create_sheet('index',0)

#修改名称
wb1.title = 'test'

# 添加数据
wb1['A1'] = 4
wb1['A2'] = 5

# 添加函数
wb1['A3'] = '=sum(A1:A2)'

# 添加数据的第二种方式
wb1.cell(row=2,column=3,value='cell插入的值')

# 添加一行数据
wb1.append(['姓名','年龄','address'])
# 添加一个空行
wb1.append([])
# 添加一行数据
wb1.append(['xxx','18','北京'])

wb.save('1.xlsx')

 

结果

2.读取

 

   用上面的表作为示例

from openpyxl import load_workbook

wb = load_workbook('1.xlsx', data_only=True)  # 还有一个参数 read_only = True

# 获取工作簿的名称
print(wb)  # <openpyxl.workbook.workbook.Workbook object at 0x00000231EE0C30B8>

wb1 = wb['test']

# 读方式1
print(wb1['A2'].value)
# 读函数的时候,要加data_only=True, 要手动的修改并保存
print(wb1['A5'].value)

# 读的第二种方法
print(wb1.cell(row=3, column=1).value)

# 获取所有行的数据
for row in wb1.rows:
    # 获取每一个单元格的数据
    for c in row:
        print(c.value)

# 获取所有列的数据
for column in wb1.columns:
    # 获取每一个单元格的数据
    for r in column:
        print(r.value)

# 获取最大的行数
print(wb1.max_row)  # 6
# 获取最大的列数
print(wb1.max_column)  # 3

 

posted @ 2019-04-30 21:30  robertx  阅读(3026)  评论(0编辑  收藏  举报