详解python的xlwings库读写excel操作总结


Posted in Python onFebruary 26, 2021

一、总结(点击显示或隐藏总结内容)

一句话总结:
xlwings 是 Python 中操作Excel的一个第三方库,支持.xls读写,.xlsx读写,操作非常简单,功能也很强大

1、xlwings 中的逻辑:应用->工作簿->工作表->范围 对应的代码?

应用:一个应用(一个xlwings程序):app = xw.App(visible=True, add_book=False)
工作簿(book):excel文件(excel程序):wb = app.books.add()
工作表(sheet):sheet:sht = wb.sheets['sheet1']
范围:行列:sht.range('a6').expand('table').value = [['a','b'],['d','e']]

import xlwings as xw

# 写到Excel中去
# add_book也就是是否增加excel 的book
# visible=True 表示操作过程是否可显示
app = xw.App(visible=True, add_book=False)
# 工作簿
wb = app.books.add()

# 页sheet1
sht = wb.sheets['sheet1']
# 单个值插入
# sht.range('A1').value = '产品名称'
# sht.range('B1').value = '编号'
# sht.range('C1').value = '价格'
# sht.range('A2').value = '不告诉你'
# sht.range('B2').value = 'n110110'
# sht.range('C2').value = '688.26'
# sht.range('A3').value = '不告诉你1'
# sht.range('B3').value = 'n1101101'
# sht.range('C3').value = '688.261'

# 插入一行
# sht.range('a1').value = [1,2,3,4]
# 等同于
# sht.range('a1:d4').value = [1,2,3,4]

# 插入一列
# sht.range('a2').options(transpose=True).value = [5,6,7,8]

# 同时插入行列
# sht.range('a6').expand('table').value = [['a','b','c'],['d','e','f'],['g','h','i']]

# 在当前目录下生成文件
wb.save('demo1.xlsx')
wb.close()
app.quit()

# import os
# path1=os.path.abspath('.')  # 表示当前所处的文件夹的绝对路径
# print(path1)
# path2=os.path.abspath('..') # 表示当前所处的文件夹上一级文件夹的绝对路径
# print(path2)

# 关于路径问题,切换到指定目录即可

2、xlwings库向excel 插入值的方式?

a、插入单个值:sht.range('A1').value = '产品名称'
b、插入一行:sht.range('a1').value = [1,2,3,4] 或者 sht.range('a1:d4').value = [1,2,3,4]
c、插入一列:sht.range('a2').options(transpose=True).value = [5,6,7,8]
d、同时插入行列:sht.range('a6').expand('table').value = [['a','b','c'],['d','e','f'],['g','h','i']]
 

3、xlwings库 读写excel基本操作步骤?

就是按照xlwings库逻辑(应用->工作簿->工作表->范围)操作即可,打开的记得关就好了,该读就读,该写就写

app = xw.App(visible=True, add_book=False)
# 工作簿
wb = app.books.add()
# 页sheet1
sht = wb.sheets['sheet1']
# 同时插入行列
sht.range('a6').expand('table').value = [['a','b','c'],['d','e','f'],['g','h','i']]
# 在当前目录下生成文件
wb.save('demo1.xlsx')
wb.close()
app.quit()

4、xlwings库 读取excel中的数据的方式?

print(sht.range('a1:c7').value),这样读行,读列,还是同时读行读列都可以

 

# 读取行列:读取A1:C7(直接填入单元格范围就行了),得到一个二维列表
print(sht.range('a1:c7').value)

# 读取行:得一维列表 
# print(sht.range('a1:c1').value)

# 读取列:得一维列表
# print(sht.range('a1:a7').value)
import xlwings as xw

app = xw.App(visible=True, add_book=False)
# 显示警报()
app.display_alerts = True
# 屏幕更新(应用中)
app.screen_updating = True
# 打开文件

wb = app.books.open('demo1.xlsx')
sht = wb.sheets['sheet1']

# 遍历读取单元格
# column_name = ['A','B',"C"]
# data_list = [] #将数据存到list中去
# for i in range(3): # 遍历行
#   row_list = []
#   for j in range(3): #遍历列
#     str1 = column_name[j]+str(i+1)
#     a = sht.range(str1).value
#     row_list.append(a)
#     print(a)
#     pass
#   data_list.append(row_list)
#   pass
# print(data_list)

# 读取行列:读取A1:C7(直接填入单元格范围就行了),得到一个二维列表
print(sht.range('a1:c7').value)

# 读取行:得一维列表 
# print(sht.range('a1:c1').value)

# 读取列:得一维列表
# print(sht.range('a1:a7').value)
wb.save()
wb.close()
app.quit()

二、python的xlwings库读写excel操作总结

1、写

"""

xlwings介绍
xlwings 是 Python 中操作Excel 的一个第三方库,
支持.xls读写,.xlsx读写
操作非常简单,功能也很强大

1、安装库
pip3 install xlwings

2、引入库
import xlwings as xw

3、
应用->工作簿->工作表->范围

应用:一个应用(一个xlwings程序):
app = xw.App(visible=True, add_book=False)

工作簿(book):
excel文件(excel程序):wb = app.books.add()

工作表(sheet):
sheet:sht = wb.sheets['sheet1']

范围:行列:
sht.range('a6').expand('table').value = [['a','b'],['d','e']]

xlwings.App(visible=True,add_book=False)
其中参数visible(表示处理过程是否可视,也就是处理Excel的过程会不会显示出来),add_book(是否打开新的Excel程序,也就是是不是打开一个新的excel窗口)

"""
import xlwings as xw

# 写到Excel中去
# add_book也就是是否增加excel 的book
# visible=True 表示操作过程是否可显示
app = xw.App(visible=True, add_book=False)
# 工作簿
wb = app.books.add()

# 页sheet1
sht = wb.sheets['sheet1']
# 单个值插入
# sht.range('A1').value = '产品名称'
# sht.range('B1').value = '编号'
# sht.range('C1').value = '价格'
# sht.range('A2').value = '不告诉你'
# sht.range('B2').value = 'n110110'
# sht.range('C2').value = '688.26'
# sht.range('A3').value = '不告诉你1'
# sht.range('B3').value = 'n1101101'
# sht.range('C3').value = '688.261'

# 插入一行
# sht.range('a1').value = [1,2,3,4]
# 等同于
# sht.range('a1:d4').value = [1,2,3,4]

# 插入一列
# sht.range('a2').options(transpose=True).value = [5,6,7,8]

# 同时插入行列
# sht.range('a6').expand('table').value = [['a','b','c'],['d','e','f'],['g','h','i']]

# 在当前目录下生成文件
wb.save('demo1.xlsx')
wb.close()
app.quit()

# import os
# path1=os.path.abspath('.')  # 表示当前所处的文件夹的绝对路径
# print(path1)
# path2=os.path.abspath('..') # 表示当前所处的文件夹上一级文件夹的绝对路径
# print(path2)

# 关于路径问题,切换到指定目录即可

2、读

import xlwings as xw

app = xw.App(visible=True, add_book=False)
# 显示警报()
app.display_alerts = True
# 屏幕更新(应用中)
app.screen_updating = True
# 打开文件

wb = app.books.open('demo1.xlsx')
sht = wb.sheets['sheet1']

# 遍历读取单元格
# column_name = ['A','B',"C"]
# data_list = [] #将数据存到list中去
# for i in range(3): # 遍历行
#   row_list = []
#   for j in range(3): #遍历列
#     str1 = column_name[j]+str(i+1)
#     a = sht.range(str1).value
#     row_list.append(a)
#     print(a)
#     pass
#   data_list.append(row_list)
#   pass
# print(data_list)

# 读取行列:读取A1:C7(直接填入单元格范围就行了),得到一个二维列表
print(sht.range('a1:c7').value)

# 读取行:得一维列表
# print(sht.range('a1:c1').value)

# 读取列:得一维列表
# print(sht.range('a1:a7').value)

wb.save()
wb.close()
app.quit()

到此这篇关于详解python的xlwings库读写excel操作总结的文章就介绍到这了,更多相关python xlwings库读写excel内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
在Python的Tornado框架中实现简单的在线代理的教程
May 02 Python
Python实现约瑟夫环问题的方法
May 03 Python
numpy数组拼接简单示例
Dec 15 Python
windows 下python+numpy安装实用教程
Dec 23 Python
python实现txt文件格式转换为arff格式
May 31 Python
关于tf.TFRecordReader()函数的用法解析
Feb 17 Python
Python如何执行精确的浮点数运算
Jul 31 Python
Python类型转换的魔术方法详解
Dec 23 Python
Python使用UDP实现720p视频传输的操作
Apr 24 Python
Python面向对象之内置函数相关知识总结
Jun 24 Python
Python自动化工具之实现Excel转Markdown表格
Apr 08 Python
Python使用Web框架Flask开发项目
Jun 01 Python
pytorch 中forward 的用法与解释说明
Feb 26 #Python
浅谈Python xlwings 读取Excel文件的正确姿势
Feb 26 #Python
pycharm Tab键设置成4个空格的操作
Feb 26 #Python
解决pycharm 格式报错tabs和space不一致问题
Feb 26 #Python
pycharm 使用tab跳出正在编辑的括号(){}{}等问题
Feb 26 #Python
Python爬取网站图片并保存的实现示例
Feb 26 #Python
python中使用asyncio实现异步IO实例分析
Feb 26 #Python
You might like
利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法
2011/12/19 PHP
php中foreach结合curl实现多线程的方法分析
2016/09/22 PHP
Laravel自动生成UUID,从建表到使用详解
2019/10/24 PHP
javascript 对表格的行和列都能加亮显示
2008/12/26 Javascript
js 省地市级联选择
2010/02/07 Javascript
jquery实现的元素的left增加N像素 鼠标移开会慢慢的移动到原来的位置
2010/03/21 Javascript
点击页面其它地方隐藏该div的两种思路
2013/11/18 Javascript
jQuery 插件开发指南
2014/11/14 Javascript
Javascript前端UI框架Kit使用指南之kitjs的对话框组件
2014/11/28 Javascript
JavaScript实现更改网页背景与字体颜色的方法
2015/02/02 Javascript
javascript实现倒计时并弹窗提示特效
2015/06/05 Javascript
JS实现统计复选框选中个数并提示确定与取消的方法
2015/07/01 Javascript
vue数据传递--我有特殊的实现技巧
2018/03/20 Javascript
微信小程序支付前端源码
2018/08/29 Javascript
详解swiper在vue中的应用(以3.0为例)
2018/09/20 Javascript
vue项目中使用fetch的实现方法
2019/04/25 Javascript
如何利用javascript接收json信息并进行处理
2020/08/06 Javascript
手写Vue2.0 数据劫持的示例
2021/03/04 Vue.js
Python中装饰器的一个妙用
2015/02/08 Python
举例讲解Python设计模式编程的代理模式与抽象工厂模式
2016/01/16 Python
Python找出list中最常出现元素的方法
2016/06/14 Python
详谈python中冒号与逗号的区别
2018/04/18 Python
Python设计模式之外观模式实例详解
2019/01/17 Python
使用Template格式化Python字符串的方法
2019/01/22 Python
Python编程快速上手——疯狂填词程序实现方法分析
2020/02/29 Python
python pymysql库的常用操作
2020/10/16 Python
基于python的opencv图像处理实现对斑马线的检测示例
2020/11/29 Python
Clarks鞋美国官网:全球领军鞋履品牌
2017/05/13 全球购物
质检员岗位职责
2013/12/17 职场文书
银行学习十八大感想
2014/01/11 职场文书
县人大领导班子四风对照检查材料思想汇报
2014/10/09 职场文书
2014年手术室工作总结
2014/11/26 职场文书
治庸问责工作总结
2015/08/11 职场文书
初中体育教学随笔
2015/08/15 职场文书
Python数组变形的几种实现方法
2022/05/30 Python
Vue 打包后相对路径的引用问题
2022/06/05 Vue.js