18-09-20 关于Xlwings读写基础1

一 利用xlwings 读取Excel 的读取修改数据 

import xlwings as xw
"""
# 1. 读一个已存在的Excel文件:利用xlwings 读取Excel中的一个单元格 并且修改
app=xw.App(visible=False,add_book=False)
app.display_alerts=False
app.screen_updating=False
filepath=r'e:\111.xlsx'
wb=app.books.open(filepath) #读取某个目录文件
print(wb.sheets["小花猫"].range('b4').value) #通过已知的sheet 名字,和表格(行字母+列数字)去读取读取Excel的数据

wb.sheets['小花猫'].range('b4').value='天道酬勤' #修改数据
wb.save()
wb.close()
app.quit()
# ===============================================
# 2.新建Excel 并写入一些数据区别于Xlwt
import xlwings as xw
app=xw.App(visible=True,add_book=False)
wb=app.books.add()
# wb就是新建的工作簿(workbook),下面则对wb的sheet1的A1单元格赋值
wb.sheets['sheet1'].range('A8').value='Hello'
wb.sheets[0].range(8,2).value='World!'
wb.save(r'E:\11.xlsx')
wb.close()
app.quit()

3.单元格的多种引用方式

1按照sheet引用方式
#3-1 获取A1单元格
rng=sht[’A1']
#3-2 获取A1:B5单元格
rng=sht['A1:B5']
# 在第i+1行,第j+1列的单元格
#3-3 B1单元格
rng=sht[0,1]
#3-4 A1:J10????? #索引取值
rng=sht[:10,:10]

2按照range 索引引用方式
# 可以用表示行列的tuple进行引用
#3-5 A1单元格的引用
xw.Range(1,1)
#3-6 A1:C3单元格的引用
xw.Range((1,1),(3,3)
"""
# 3 对Excel数据的写操作
import xlwings as xw
app=xw.App(visible=False,add_book=False)
app.display_alerts=False
app.screen_updating=False
filepath=r'E:\11.xlsx'
wb=app.books.open(filepath)
sht = wb.sheets[0]

#3-1要求写入A1 到 E1 的数据 整行的数据
# sht.range("A1").value= [1,2,3,4,5]

#3-2要求写入A2 到 A6的数据 整列的数据
sht.range("A2").options(transpose=True).value= [1,2,3,4,5]

# 3-3将2x2表格,即二维数组,储存在A1:B2中,如第一行1,2,第二行3,4
sht.range('B1').options(expand='table').value=[[1,2],[3,4]]

# 3-4将单元格 A1的值,读取到a变量中
a=sht.range('A1').value
# print(a)

# 3-5 读取整列的值 成为一个列表将A1到A3的值,读取到a列表中
b=sht.range('A1:A3').value #[1.0, 1.0, 2.0]
# print(b)

# 3-6 将第一行和第二行的数据按二维数组的方式读取
d=sht.range('B1:C2').value #[[1.0, 2.0], [3.0, 4.0]]
# print(d)



wb.save()
wb.close()
print("完成")
app.quit()

猜你喜欢

转载自www.cnblogs.com/xiaoluoboer/p/9682284.html