day20总结

day20excel文件操作总结

一、excel文件读操作

1.获取工作簿对象

openpyxl.load_workbook(文件路径)

import openpyxl
workbook = openpyxl.load_workbook('files\小宝剑大药房(高新店)2018年销售数据.xlsx')

2.获取工作表

1)获取当前工作簿中所有的工作表的表名

a.工作簿对象[表名]

names = workbook.sheetnames
print(names)
# 2) 获取工作表对象
# a.工作簿对象[表名]
# student_sheet = workbook['学生表']
teacher_sheet = workbook['老师表']
course_sheet = workbook['课程表']

b.获取活跃表:工作簿对象.active

student_sheet = workbook.active

3.表相关内容

1)获取最大行数和列表

表对象.max_column - 最大列数

表对象.max_row - 最大列数

m_col = student_sheet.max_column
m_row = student_sheet.max_row

2)获取单元格

a. 表对象.cell(行号,列号) - 获取指定单元格(行号和列号都是从1开始的数字)

cell1 = student_sheet.cell(2, 2)
print(cell1)

获取单元格内容:单元格对象.value

print(cell.value)

b.表对象[位置]

cell2 = student_sheet['D2']
print(cell2.value)

二、excel文件写操作

1.获取工作簿

1)获取已经存在的excel文件对应的工作簿

wb = openpyxl.load_workbook('files\小宝剑大药房2018年销售数据.xlsx')

2)创建新的工作簿

wb = openpyxl.Workbook()
# 如果文件存在直接打开,不存在新建
if os.path.exists('files/demo4.xlsx'):
    wb = openpyxl.load_workbook('files/demo4.xlsx')
else:
    wb = openpyxl.Workbook()

2.基于工作表的写操作

1)添加工作表:工作簿对象.create_she()

wb.create_sheet()

# sheet1 = wb.create_sheet()
# sheet2 = wb.create_sheet('学生表')
# sheet3 = wb.create_sheet('老师表', 0)

# 有就直接获取表,没有才创建表
if '老师表' in wb.sheetnames:
    teacher_sheet = wb['老师表']
else:
    teacher_sheet = wb.create_sheet('老师表', 0)

2)删除工作表

工作簿对象.remove(表对象)
if 'Sheet' in wb.sheetnames:
    wb.remove(wb['Sheet'])

3.基于单元格的写操作 - 修改单元格内容

# 单元格对象.value = 新内容
# teacher_sheet.cell(2, 1).value = '小明'

# 将单元格内容赋值为None,就是在删除单元格
# teacher_sheet.cell(1, 2).value = None

# 在文件的最后添加一行数据
# data = ['小花', '119', 'python', '女']
#
# row = teacher_sheet.max_row + 1
# for col in range(1, len(data) + 1):
#     teacher_sheet.cell(row, col).value = data[col-1]


# 在文件的最后添加多行数据
datas = [
    [],
    [],
    []
]

4.保存文件

工作簿对象.save(文件路径)

wb.save(’ ')

wb.save('files/demo4.xlsx')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值