目录
专栏导读 库的介绍 库的安装 基础用法1:打开并读取 Excel 文件 基础用法2:读取某一行 (注意点:expand(‘right’)) 基础用法3:读取某一列 (注意点:expand(‘down’)) 基础用法4:在某单元格写入数据 基础用法4:写入多行 基础用法5:写入公式 总结
专栏导读
🌸 欢迎来到Python办公自动化专栏—Python处理办公问题,解放您的双手 🏳️🌈 博客主页:请点击——> 一晌小贪欢的博客主页求关注 👍 该系列文章专栏:请点击——>Python办公自动化专栏求订阅 🕷 此外还有爬虫专栏:请点击——>Python爬虫基础专栏求订阅 📕 此外还有python基础专栏:请点击——>Python基础学习专栏求订阅 文章作者技术和水平有限,如果文中出现错误,希望大家能指正🙏 ❤️ 欢迎各位佬关注! ❤️
库的介绍
xlwings 是一个用于与 Excel 交互的 Python 库。它允许你使用 Python 代码读取、写入和操作 Excel 文件(.xlsx 和 .xls),同时保持 Excel 应用程序的界面可用,这样你可以实时查看和交互。xlwings 的主要优势在于其易用性和强大的功能,它支持 Excel 的大部分功能,如公式、图表、形状、图像等。
库的安装
pip install xlwings - i https: // pypi. tuna. tsinghua. edu. cn/ simple/
基础用法1:打开并读取 Excel 文件
import xlwings as xw
app = xw. App ( visible= False, add_book= False)
app. display_alerts = False # 关闭一些提示信息,可以加快运行速度。 默认为 True。
app. screen_updating = False # 更新显示工作表的内容。默认为 True。关闭它也可以提升运行速度。
wb = app. books. open ( "example.xlsx" )
sheet = wb. sheets[ 0 ] # 或者 sheet = wb. sheets[ "索引值从0开始" ]
data = sheet. range ( 'A1' ) . expand ( ) . value
# print ( data)
for i in data:
print ( i)
# 关闭
wb. close ( )
[ '表头1' , '表头2' , '表头3' , '表头4' , '表头5' , '表头6' , '表头7' , '表头8' , '表头9' , '表头10' ]
[ '数据1' , '数据2' , '数据3' , '数据4' , '数据5' , '数据6' , '数据7' , '数据8' , '数据9' , '数据10' ]
[ '数据2' , '数据3' , '数据4' , '数据5' , '数据6' , '数据7' , '数据8' , '数据9' , '数据10' , '数据11' ]
[ '数据3' , '数据4' , '数据5' , '数据6' , '数据7' , '数据8' , '数据9' , '数据10' , '数据11' , '数据12' ]
[ '数据4' , '数据5' , '数据6' , '数据7' , '数据8' , '数据9' , '数据10' , '数据11' , '数据12' , '数据13' ]
[ '数据5' , '数据6' , '数据7' , '数据8' , '数据9' , '数据10' , '数据11' , '数据12' , '数据13' , '数据14' ]
[ '数据6' , '数据7' , '数据8' , '数据9' , '数据10' , '数据11' , '数据12' , '数据13' , '数据14' , '数据15' ]
[ '数据7' , '数据8' , '数据9' , '数据10' , '数据11' , '数据12' , '数据13' , '数据14' , '数据15' , '数据16' ]
[ '数据8' , '数据9' , '数据10' , '数据11' , '数据12' , '数据13' , '数据14' , '数据15' , '数据16' , '数据17' ]
[ '数据9' , '数据10' , '数据11' , '数据12' , '数据13' , '数据14' , '数据15' , '数据16' , '数据17' , '数据18' ]
[ '数据10' , '数据11' , '数据12' , '数据13' , '数据14' , '数据15' , '数据16' , '数据17' , '数据18' , '数据19' ]
基础用法2:读取某一行 (注意点:expand(‘right’))
import xlwings as xw
app = xw. App( visible= False , add_book= False )
app. display_alerts = False
app. screen_updating = False
wb = app. books. open ( "example.xlsx" )
sheet = wb. sheets[ 0 ]
data = sheet. range ( 'A1' ) . expand( ) . value
value = sheet. range ( 'A1' ) . expand( 'right' ) . value
print ( '第 1 行的数据为:' , value)
value = sheet. range ( 2 , 1 ) . expand( 'right' ) . value
print ( '第 2 行的数据为:' , value)
wb. close( )
第 1 行的数据为: [ '表头1' , '表头2' , '表头3' , '表头4' , '表头5' , '表头6' , '表头7' , '表头8' , '表头9' , '表头10' ]
第 2 行的数据为: [ '数据1' , '数据2' , '数据3' , '数据4' , '数据5' , '数据6' , '数据7' , '数据8' , '数据9' , '数据10' ]
基础用法3:读取某一列 (注意点:expand(‘down’))
import xlwings as xw
app = xw. App( visible= False , add_book= False )
app. display_alerts = False
app. screen_updating = False
wb = app. books. open ( "example.xlsx" )
sheet = wb. sheets[ 0 ]
data = sheet. range ( 'A1' ) . expand( ) . value
value = sheet. range ( 'C1' ) . expand( 'down' ) . value
print ( '第 3 列的数据为:' , value)
value = sheet. range ( 1 , 1 ) . expand( 'down' ) . value
print ( '第 1 列的数据为:' , value)
wb. close( )
第 3 列的数据为: [ '表头3' , '数据3' , '数据4' , '数据5' , '数据6' , '数据7' , '数据8' , '数据9' , '数据10' , '数据11' , '数据12' ]
第 1 列的数据为: [ '表头1' , '数据1' , '数据2' , '数据3' , '数据4' , '数据5' , '数据6' , '数据7' , '数据8' , '数据9' , '数据10' ]
基础用法4:在某单元格写入数据
import xlwings as xw
app = xw. App( visible= False , add_book= False )
app. display_alerts = False
app. screen_updating = False
wb = app. books. add( )
wb. sheets[ 0 ] . activate( )
wb. sheets[ 0 ] . range ( 'A1' ) . value = 'Hello, World!'
wb. save( 'hello.xlsx' )
wb. close( )
基础用法4:写入多行
在这里插入代码片import xlwings as xw
app = xw. App( visible= False , add_book= False )
app. display_alerts = False
app. screen_updating = False
wb = app. books. add( )
wb. sheets[ 0 ] . activate( )
datas = [
[ '姓名' , '年龄' , '性别' ] ,
[ '张三' , 18 , '男' ] ,
[ '李四' , 20 , '女' ] ,
[ '王五' , 22 , '男' ] ,
[ '赵六' , 24 , '男' ] ,
[ '孙七' , 26 , '女' ]
]
for num, row in enumerate ( datas) :
wb. sheets[ 0 ] . range ( 'A%s' % ( num+ 1 ) ) . value = row
wb. save( 'hello.xlsx' )
wb. close( )
基础用法5:写入公式
import xlwings as xw
app = xw. App( visible= False , add_book= False )
app. display_alerts = False
app. screen_updating = False
wb = app. books. add( )
sheet = wb. sheets[ 0 ]
sheet. range ( 'A1' ) . value = 10
sheet. range ( 'A2' ) . value = 20
sheet. range ( 'A3' ) . formula = '= A1 + A2'
wb. save( 'hello.xlsx' )
wb. close( )
总结
希望对初学者有帮助 致力于办公自动化的小小程序员一枚 希望能得到大家的【一个免费关注】!感谢 求个 🤞 关注 🤞 此外还有办公自动化专栏,欢迎大家订阅:Python办公自动化专栏 求个 ❤️ 喜欢 ❤️ 此外还有爬虫专栏,欢迎大家订阅:Python爬虫基础专栏 求个 👍 收藏 👍 此外还有Python基础专栏,欢迎大家订阅:Python基础学习专栏