我建了个 Python 新手群供大家学习交流,要入群的请私聊我或者点开我头像加我

-------------------------------------手打分割线----------------------------------------------

Xlwings是我认为的Python最强大的处理Excel的库,主要原因如下:

1 Windows,Mac都能用 (Excel,WPS也都能用)

2 功能齐全,支持Excel的新建、打开、修改、保存(pandas和xlsxwriter去不能全做到)

3 语法简单(用过一次后我就记住了)

4 可以调用VBA,有丰富的API

Talk is cheap, show you the code.

先说基本操作:

引入库

import 

打开Excel程序,默认设置:程序可见,只打开不新建工作薄

app 

打开已有工作簿(支持绝对路径和相对路径)

wb = app.books.open('example.xlsx')
#练习的时候建议直接用下面这条
#wb = xw.Book('example.xlsx')
#这样的话就不会频繁打开新的Excel

保存工作簿

wb.save('example.xlsx')

退出工作簿(可省略)

wb.close()

退出Excel

app.quit()

引用Excel工作表,单元格

引用工作表

sht = wb.sheets[0]
#sht = wb.sheets[第一个sheet名]

引用单元格

rng = sht.range('a1')
#rng = sht['a1']
#rng = sht[0,0] 第一行的第一列即a1,相当于pandas的切片

引用区域

rng = sht.range('a1:a5')
#rng = sht['a1:a5']
#rng = sht[:5,0]

重头戏:写入数据
(xlwings多个单元格的写入大多是以表格形式)

选择起始单元格A1,写入字符串‘Hello’

sht.range('a1').value = 'Hello'

默认按行插入:A1:D1分别写入1,2,3,4

sht.range('a1').value = [1,2,3,4]

等同于

sht.range('a1:d1').value = [1,2,3,4]

按列插入: A2:A5分别写入5,6,7,8

你可能会想

*sht.range('a2:a5').value = [5,6,7,8]

但是你会发现xlwings还是会按行处理的,上面一行等同于

*sht.range('a2').value = [5,6,7,8]

正确语法:

sht.range('a2').options(transpose=True).value = [5,6,7,8]

既然默认的是按行写入,我们就把它倒过来嘛(transpose),单词要打对,如果你打错单词,它不会报错,而会按默认的行来写入(别问我怎么知道的)

我们输入信息的时候往往不只是写入一行或一列,
多行输入就要用二维列表了:

sht.range('a6').expand('table').value = [['a','b','c'],['d','e','f'],['g','h','i']]

说完了写入就该讲读取了,记住了写入,读取就简单了

读取A1:D4(直接填入单元格范围就行了)

print(sht.range('a1:d4').value)

返回的值是列表形式,多行多列为二维列表,但有一点要注意,返回的数值默认是浮点数

a = sht.range('a1:d1').value
print(a)
for i in a:print(i)print(type(i))

读取excel的第一列怎么做?

*a = sht.range('a:a').value
print(len(a))

你将会得到一个1048576个元素的列表,也就是空值也包含进去了,所以这种方法不行

思路:先计算单元格的行数(前提是连续的单元格)

rng = sht.range('a1').expand('table')
nrows = rng.rows.count

接着就可以按准确范围读取了

a 

同理选取一行的数据也一样

ncols 

好了基本操作就介绍到这里了,下次搞个实战,把xlwings好好用起来

(实战已完成,链接在下面)

呆呆:Python与Excel交互——Xlwings实战​zhuanlan.zhihu.com

点个赞支持下呗!

(我建了个 Python 新手群供大家学习交流,要入群的请私聊我或者点开我头像加我)

excel表格分割线一分为二_Python与Excel交互——Xlwings相关推荐

  1. excel表格分割线一分为二_PDF转Excel的Python代码

    本代码由广州75中麻玉国老师分享在NOI教练群内,自己亲测了一下,感觉蛮好玩,所以特意收藏下来,具体代码如下: import pdfplumberfrom openpyxl import Workbo ...

  2. excel表格分割线一分为二_Anki+思维导图的两种方法(Anki+表格,Anki+幕布)

    倘若我们在知乎上搜"如何用Anki制作思维导图",那么我们会看到这样几个回答.总结来说有以下几种办法: ① 思维导图→图片,利用插件Image Occlusion Enhanced ...

  3. java使用jxl生成excel表格,jsp使用js下载excel文件xls

    java使用jxl生成excel表格,jsp使用js下载excel文件 后端代码 maven jar包 主体代码逻辑 引入的jar包 具体代码段 重点详解 表头和表格内容两种格式 直接将 HttpSe ...

  4. php页面导入excel表格,php页面导入excel表格数据:php导入excel 怎么获取excel表格数据...

    导入excel文件,后端php处理导入的数据并存入数据库,需要前后端结合的demo! thinkphp3.2phpexcel导入最基本用法 先整个最基础的代码,理解了这个,后面非常简单了 $file_ ...

  5. 办公软件excel表格_钢筋算量Excel表格,现场算钢筋,效率可与大型软件相比

    提起钢筋算量,工作很久造价和施工恐怕都要挠头,对于刚入行的造价和施工都可以说是灾难.不过不用担心,我今天就是来给大家送解决方法--钢筋算量Excel表格. 钢筋算量Excel表格基本包含了钢筋算量的全 ...

  6. 为何excel中数据无法计算机,电脑excel表格数据改不了-Excel单元格里面的数字改不动怎么办...

    如何让excel表格中的数据不允许修改 不能修改excel表格中的数据的问题 为什么在EXCEL表格中不能更改数据 EXCEL软件本身出现了一些漏洞,解决办法: 1.单击"office&qu ...

  7. 手机怎么解开excel表格xlsx加密文件,excel表格xlsx权限限制如何解除?

    excel表格xlsx在线解开,excel表格xlsx有密码怎么解开?excel表格xlsx解密助手,安利「密码帝」 无需下载安装软件,百度搜索密码帝就可以了,手机电脑都可以,一键轻松在线解密!

  8. oracle 导入excel时间格式,excel表格导入时间数据库中-excel导入数据库,我的日期是datatime()自动生成......

    如何将excel表格数据导入到oracle数据库对应的表中? 假定a1是你的mysql中的时间戳,要在B1取得普通的时间表示,则b1= =25569 A1*0.0000115743621516652 ...

  9. python能处理表格文档_python处理excel表格

    1. Python 操作 Excel 的函数库我主要尝试了 3 种读写 Exce... python 导出 oracle excel 报表 (字段名和内容支持中 文字符) 1.需要预先安装两个 pyt ...

最新文章

  1. 超简单破解网页加密源代码
  2. VMware宋家瑜:U2VL要趁早
  3. 从SD-WAN向SD-Branch过渡需要多久?—Vecloud
  4. 【转】Asp.net控件开发学习笔记整理篇 - WebControl基类
  5. 剑指offer全套题解:Python版
  6. 【Qt】undefined reference to `vtable for xxx’
  7. 蛮力法在字符串匹配问题中的应用(JAVA)--朴素模式匹配算法
  8. PostgreSQL的实践一:数据类型(一)
  9. [翻译]ElasticSearch官方文档-执行查询和过滤操作
  10. CodeForces 551E(平方分割
  11. linux 如何开启shell,linux下开启Shell命令
  12. 国产分布式ETL调度管理工具 TASKCTL 8.0 核心/代理节点部署
  13. MDUI登陆注册案例
  14. 射频识别系统的组成及工作原理解析
  15. fullscreen (JS 简易轻量化类原生的高兼容窗口全屏控件)
  16. php底部漂浮广告位代码,网站顶部底部(上下)悬浮(漂浮)广告位代码
  17. pci总线扫描及pci网卡驱动
  18. 如何修改显示Office图标而不是wps图标
  19. 1个月到2岁半的育儿方案,有了它宝宝都不用去上早教啦
  20. 大数据挖掘-使用频率top20中药材(收藏)

热门文章

  1. “飞象”已露国家级工业互联网平台之像
  2. 机器学习算法竞赛平台整理
  3. 达梦数据库自动备份,DM8设置自动备份,达梦数据库,自动备份。详细步骤。常用命令,启动关闭数据库,查看DMAP状态
  4. CTFshow web17
  5. 一组超赞的母亲节祝福创意海报
  6. 饮冰三年-人工智能-Python-17Python基础之模块与包
  7. 海思移植Live555
  8. iOS下载不了迅雷怎么办
  9. LeetCode 488. 祖玛游戏
  10. Linux权限详解(chmod、600、644、666、700、711、755、777、4755、6755、7755)