一 利用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的数据
 1查看一个单元格的数据
# print(wb.sheets["小花猫"].range('b4').value) #读取Exceld单元格的数据 # 2按照sheet增加或修改一个单元格的数据
# wb.sheets['小花猫'].range('b4').value='天道酬勤11' #修改数据 # 3增加一个sheet
# wb.sheets.add()??? # 4 激活指定的表格,指定表格位置或表格名称
# sht = wb.sheets
# wb.sheets[0].activate() #索引
# wb.sheets["我的sheet2"].activate() #名称
# 查看激活的表格
# print(sht.active) # 5 查看当前表格名称
# print(sht[1].name)
print(22) # 6 删除当前表格(前提必须先激活才行)
# sht[1].delete() # 7 查看当前激活的表格,有无返回值????
# sht[0].select() # 8 取值
# sht = wb.sheets["Sheet1"]
# A2_A5 = sht["A2:b5"] # 截取A2到A5 的数据数组的形式
# print(A2_A5.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()

18-09-20 关于Xlwings读写基础1的更多相关文章

  1. 【转】DBMS_STATS.GATHER_TABLE_STATS详解 2012-04-22 09:20:10

    [转]DBMS_STATS.GATHER_TABLE_STATS详解 2012-04-22 09:20:10 分类: Linux 由于Oracle的优化器是CBO,所以对象的统计数据对执行计划的生成至 ...

  2. idea报错:[2016-08-31 09:20:10,763] Artifact xxx:war exploded: Error during artifact deployment.

    [2016-08-31 09:20:10,763] Artifact newClassProject1:war exploded: Error during artifact deployment. ...

  3. NVIDIA-docker报错:docker-ce (= 5:18.09.0~3-0~ubuntu-xenial) but 18.06.0~ce~3-0~ubuntu is to be installed

    报错: The following packages have unmet dependencies: nvidia-docker2 : Depends: docker-ce (= 5:18.09.0 ...

  4. [网站公告]18:07-18:20阿里云SLB故障造成网站不能正常访问

    (注:由于阿里云SLB管理控制台监控数据不准,实际故障时间是18:07-18:20.) 17:55-18:2018:07-18:20,我们使用的阿里云SLB(负载均衡)中有3台出现突发故障,造成全站无 ...

  5. CentOS 7.5在线安装Docker 18.09.3

    1.安装依赖包 yum -y install yum-utils device-mapper-persistent-data lvm2 2.安装docker yum-config-manager -- ...

  6. Problem: package docker-ce-3:18.09.9-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed

    安装Docker时报错 Problem: package docker-ce-3:18.09.9-3.el7.x86_64 requires containerd.io >= 1.2.2-3, ...

  7. iOS开源库--最全的整理 分类: ios相关 2015-04-08 09:20 486人阅读 评论(0) 收藏

    youtube下载神器:https://github.com/rg3/youtube-dl 我擦咧 vim插件:https://github.com/Valloric/YouCompleteMe vi ...

  8. FlowPortal BPM官网改版了,推出20个流程免费基础版

    我一直使用的FlowPortal BPM官网网站近期改版了,看起来更加高大上了.不仅美感提高了,所传递的信息,特别是新老用户所需要的信息也更多了. 对于新版网站,我觉得比较赞的地方: 1.新增开发者中 ...

  9. 小白学 Python(20):迭代器基础

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

随机推荐

  1. Docker Registry V2 Garbage Collection

    运行 docker run --rm -v /nfs1/docker/registry:/var/lib/registry registry:2.5.1 garbage-collect -d /roo ...

  2. MariaDB glare cluster简介

    MariaDB MariaDB 是由原来 MySQL 的作者Michael Widenius创办的公司所开发的免费开源的数据库服务器,MariaDB是同一MySQL版本的二进制替代品, 当前最新版本1 ...

  3. H5开发:横屏适配

    平常我们做过的需求里,主要是以竖屏式为主,而横屏式较少.对于竖屏式场景来说,大家的经验会比较丰富,因此,此次主要式探讨下横屏式场景下的一些需要注意的点,特别是怎样去做横屏适配. 对于 H5 横屏页面来 ...

  4. python爬虫——对爬到的数据进行清洗的一些姿势(5)

    做爬虫,当然就要用数据.想拿数据进行分析,首先清洗数据.这个清洗数据包括清除无用数据列和维度,删除相同数据,对数据进行勘误之类的. 从各大不同新闻网站可以爬到重复新闻...这个可以有.之前为了对爬到的 ...

  5. 【题解】Luogu P5071 [Ynoi2015]此时此刻的光辉

    众所周知lxl是个毒瘤,Ynoi道道都是神仙题,题面好评 原题传送门 一看这题没有修改操作就知道这是莫队题(我也只会莫队) 我博客里对莫队的简单介绍 一个数N可以分解成\(p_1^{c_1}p_2^{ ...

  6. Java的集合框架(第一次小结)

    知识点一.集合框架Java集合框架提供了一套性能优良.使用方便的接口和类,它们位于java.util包中二.集合框架的结构Collection:集合接口Map:键值对接口List:有序不唯一列表接口S ...

  7. HTML色码表

    颜色名称及色样表(HTML版)   颜色名 中文名称 Hex RGB 十进制 Decimal     LightPink 浅粉红 #FFB6C1 255,182,193     Pink 粉红 #FF ...

  8. ASP.NET图片上传(配合jquery.from.js 插件)

    前端: js:        function AjaxKouBeiShopEdit() { var options = {                dataType: "json&q ...

  9. Flex外包公司——Flex案例展示

    Flex案例展示 做的mail系统:  http://gowebtop.com/webtop/ 在线购书网站  http://book.orzar.net/ eBay购物网站  http://www. ...

  10. Android 虹软2.0人脸识别,注册失败问题 分析synchronized的作用

    人脸识别需要init初始化(FaceServer中),离开时需要unInit销毁:当一个含有人脸识别的界面A跳向另一个含有人脸识别的界面B时,由于初始化和销毁都是对FaceServer类加锁(sync ...