Python之Excel基本操作

安装模块

Python读取Excel的模块有很多可以到官网查看:官网

#安装模块 openpyxl
pip install openpyxl
注意: 无需在文件系统上创建文件即可开始使用openpypl。只导入 Workbook 上课开始工作。

表格基本操作

# 表格操作
from openpyxl import Workbook
#工作簿:通过它来创建所有的结构
wb = Workbook()
#现在激活默认的工作报表Sheet
ws = wb.active
#注意: 默认设置为0。除非修改其值,否则使用此方法将始终获取第一个工作表。
#可以使用创建新工作表 Workbook.create_sheet() 方法

ws2 = wb.create_sheet('login',0)
#修改工作报表的名字
ws.title = 'for'
ws['A1'] = 44
ws['B1'] = 18
#在公作报表的尾部进行追加数据
ws.append([1,2,3])
#访问单元格,并且赋值
ws2['A1'] = 19
import datetime
ws['A2'] = datetime.datetime.now()
#添加数据
ws.cell(5,4,100)

#主要用作修改数据
ws.cell(5,6).value = 10

wb.save("sample.xlsx")
# Worksheet.cell() 方法,提供了对使用行和列表示法的单元格的访问
d = ws.cell(row=5,column=3,value=20)
#注意 在内存中创建工作表时,它不包含 cells . 它们是在首次访问时创建的。
# for x in range(1,101):
#     for y in range(1,101):
#         ws.cell(row=x, column=y)
wb.save('test.xlsx')

读取多条数据到表中

from openpyxl import Workbook
wb = Workbook()
wb.create_sheet('login',0)
#转换工作报表,ws代表login的工作报表
ws = wb['login']
#Data 中的第一个数据的下标是什么 0
data = [
    {'name':'Excels','age':18,'addr':'biejing'},
    {'name':'python','age':18,'addr':'biejing'},
    {'name':'Django','age':18,'addr':'biejing'},
    {'name':'Django','age':18,'addr':'biejing'},
    {'name':'Django','age':18,'addr':'biejing'},
    {'name':'Django','age':18,'addr':'biejing'},
]
#第一行是名字
ws.append(['name','age','addr'])
#开始的时候必须第二行
for i in range(2,len(data)+2):
    ws.cell(i,1).value = data[i-2]['name']
    ws.cell(i, 2).value = data[i - 2]['age']
    ws.cell(i, 3).value = data[i - 2]['addr']

wb.save('test.xlsx')

读取已经存在的Excel文件

通过该方法导入就行:from openpyxl import load_workbook

'''
读取测试用例(重点)
'''
from openpyxl import load_workbook
#获取文件工作薄
wb1 = load_workbook('test.xlsx')
# wb2 = load_workbook('test2.xlsx')
#切换到具体的工作报表
sheet1 = wb1['login']
# sheet2 = wb2['login2']
resut = []
#根据规律获取到每条数据
for i in range(2,sheet1.max_row+1):
     row_data = {}
     row_data['name'] = sheet1.cell(i,1).value
     row_data['age'] = sheet1.cell(i, 2).value
     row_data['addr'] = sheet1.cell(i, 3).value
     resut.append(row_data)
#打印到屏幕
print(resut)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雲小妖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值