艺赛旗(RPA) Python 常见 excel 文件的操作模块
艺赛旗 RPA8.0全新首发免费下载 点击下载
http://www.i-search.com.cn/index.html?from=line1
为更加深入的理解Python及理解艺赛旗机器人的操作原理,这里简单介绍基于python开发的对于日常文件的操作的模块
1. Excel文档的读写操作
1.1 Excel 文件表格数据的读取
RPA 机器人的设计器的流程设计过程该功能的实现
在很多应用场景中,程序都需要读取excel的配置。
比如,在游戏中,数值策划用 excel 建好了数值表,我们要导入到游戏中。
概述
这里我使用了 pyexcel-xls 这个东西。我个人觉得这个东西导出的数据结构,结构可读性很强,数据结构如下:
整个 excel 文件,转化为一个字典结构:每个 key 就是一个子表(Sheet)
每个子表(Sheet),转化为一个二维数组:分别为行和列。
安装
pypi 的地址:
https://pypi.python.org/pypi/pyexcel-xls/
■ 方法一:
可以直接用 pip 安装
pip install pyexcel-xls
■ 方法二:
下载安装包手动安装。
先安装两个依赖包:
xlrd 和 pyexcel-io
然后再安装 pyexcel-xls
使用
一、读 excel 数据 (xls, xlsx)
1,先建立一个目标 excel 表,这里为了做演示,简单建立一个 read_test.xlsx 文件:
里面的数据(3 行,4 列):
2,写 Python 脚本,读这个文件:
#! /usr/bin/env python
#coding=utf-8
#pyexcel_xls 以 OrderedDict 结构处理数据
from collections import OrderedDict
from pyexcel_xls import get_data
from pyexcel_xls import save_data
def read_xls_file():
xls_data = get_data(r"D:\read_test.xlsx")
print “Get data type:”, type(xls_data)
for sheet_n in xls_data.keys():
print sheet_n, “:”, xls_data[sheet_n]
if name == ‘main’:
read_xls_file()
看一下输出的打印信息:
可以看到:
整个 excel 文件,转化为一个 OrderedDict (有序字典) 结构:每个 key 就是一个子表(Sheet)。
每个子表(Sheet),转化为一个列表结构:很像二维数组,第一层列表为行(Row),行的下标为列(Column),对应的值为单元格的值。编码为 unicode
简单,易用,读出数据后,非常适合做二次处理!
■ 注意,excel 文件名(就是那个 xls 或者 xlsx 文件),尽量不要用中文,如果您要使用中文,请转化为 unicode 编码,如:
xls_data = get_data(unicode(r"D:\ 试试.xlsx", “utf-8”))
二、写 excel 数据 (xls)
根据上文,写也比较简单,不做过多解释。
#! /usr/bin/env python
#coding=utf-8
pyexcel_xls 以 OrderedDict 结构处理数据
from collections import OrderedDict
from pyexcel_xls import get_data
from pyexcel_xls import save_data
def read_xls_file():
xls_data = get_data(unicode(r"D:\ 试试.xlsx", “utf-8”))
print “Get data type:”, type(xls_data)
for sheet_n in xls_data.keys():
print sheet_n, “:”, xls_data[sheet_n]
return xls_data
写 Excel 数据, xls 格式
def save_xls_file():
data = OrderedDict()
sheet 表的数据
sheet_1 = []
row_1_data = [u"ID", u"昵称", u"等级"] # 每一行的数据
row_2_data = [4, 5, 6]
逐条添加数据
sheet_1.append(row_1_data)
sheet_1.append(row_2_data)
添加 sheet 表
data.update({u"这是 XX 表": sheet_1})
保存成xls文件
save_data(“D:\write_test.xls”, data)
if name == ‘main’:
save_xls_file()
看一下写出的 xls 文件:
1.2 Excel 文件表格数据的写入
python 中模块有 xlxswriter 模块
具体的使用过程:
1、安装 xlsxwriter 模块
pip install xlsxwriter
2、使用
import xlsxwriter
workbook ``=
xlsxwriter.Workbook(``'hello.xlsx'``)
worksheet ``=
workbook.add_worksheet()
worksheet.set_column(``'B:B'``, ``len``(``'hello world'``)``+``1``)
worksheet.write(``'B5'``, ``'hello world'``)
# 或者:worksheet.write('A1', 'hello world')
workbook.close()
按行写入:
from xlsxwriter.workbook ``import Workbook
workbook ``=
Workbook(``'hello.xlsx'``)
worksheet ``=
workbook.add_worksheet()
bold ``=
workbook.add_format({``'bold'``: ``1``})
# Add the worksheet data that the charts will refer to.
headings ``=
[``'Types'``, ``'Sub Type'``, ``'Value 1'``, ``'Value 2'``, ``'Value 3'``]
data ``=
[
[``'Type 1'``, ``'Sub Type A'``, ``5000``, ``8000``, ``6000``],
['``', '``Sub ``Type
B', ``2000``, ``3000``, ``4000``],
['``', '``Sub ``Type
C', ``250``, ``1000``, ``2000``],
[``'Type 2'``, ``'Sub Type D'``, ``6000``, ``6000``, ``6500``],
['``', '``Sub ``Type
E', ``500``, ``300``, ``200``],
]
worksheet.write_row(``'A1'``, headings, bold)
for
row_num, row_data ``in
enumerate``(data):
worksheet.write_row(row_num ``+
1``, ``0``, row_data)
workbook.close()
3、方法介绍:
(1) 创建你的.xlsx 文件 : workbook = xlsxwriter.Workbook(‘你的 xlsx 文件名.xlsx’)
(2) 增加 sheet : worksheet = workbook.add_worksheet()
(3) 设置 column 的属性,set_column(),第一个参数是确定设置第几列到第几列属性,’A:A’是设置 A 列的属性,’A:D’是设置 A 列到 D 列的属性,第二个参数是设置列宽,通过这个参数可以确定指定的列的宽度
(4) 一切都准备好了,现在就写入内容了。两种方式:
第一种,三个参数的,第一个参数是确定开始的行的位置,第二个参数是确定开始的列的位置,第三个参数是要写入的内容
第二种,两个参数的,第一个参数是确定开始的列行 (A1 这样的,第 A 列第 1 行),第二个参数是写入的内容
具体的请于.xlsx 文件对应:
(5) 最后别忘了,把写入后的.xlsx 文件关闭, workbook.close()
在艺赛旗的设计器中使用的是类似该模块的方法
其中读取 Excel 表格数据使用的是 pandas 的 excel_read 模块进行操作的,不需要先打开文件进行数据的操作,而是直接 hou8tai 打开进行数据的读取操作
而写入数据的原理则类似以上 Python 的 xlxswriter 模块的方法进行操作的 Excel 表格对应设计器中的流程的 Excel 的整行,整列,单元格,等的操作
以上为个人暂定见解,尚有许多其他 Python 的模块也能进行相应功能的实现(xlsread 模块)
艺赛旗(RPA) Python 常见 excel 文件的操作模块相关推荐
- 艺赛旗(RPA)Python:遍历输出某路径下的所有文件和文件夹
艺赛旗 RPA8.0全新首发免费下载 点击下载 http://www.i-search.com.cn/index.html?from=line1 详细内容请参看艺赛旗官网支持栏目:RPA社区 点击链接 ...
- 艺赛旗(RPA)Python 读写 ini 配置文件
艺赛旗 RPA8.0全新首发免费下载 点击下载 http://www.i-search.com.cn/index.html?from=line1 详细内容请参看艺赛旗官网支持栏目:RPA社区 点击链接 ...
- 艺赛旗(RPA) Python 科学计算:matplotlib (精华博文)
艺赛旗 RPA8.0全新首发免费下载 点击下载 http://www.i-search.com.cn/index.html?from=line1 本文介绍 matplotlib 相关的内容,以例子为主 ...
- 艺赛旗RPA 第三方库系列(一):如何调用 Python 第三方库
目前艺赛旗RPA已经更新到8.0版本,可以让所有用户免费下载试用http://www.i-search.com.cn/index.html?from=line1 (复制链接下载) 当你需要调用使用 p ...
- 艺赛旗RPA 第三方库系列(二):提升 pip 工具的下载速度
目前艺赛旗RPA已经更新到8.0版本,可以让所有用户免费下载试用http://www.i-search.com.cn/index.html?from=line1 (复制链接下载) pip 工具默认从国 ...
- 艺赛旗RPA 网页处理系列(一):在网页中的可变元素如何准确定位
目前艺赛旗RPA已经更新到8.0版本,可以让所有用户免费下载试用http://www.i-search.com.cn/index.html?from=line1 (复制链接下载) 在网页中的可变元素如 ...
- 艺赛旗RPA验证码处理系列(三):破解极验滑动验证码
目前艺赛旗RPA已经更新到8.0版本,可以让所有用户免费下载试用http://www.i-search.com.cn/index.html?from=line1 (复制链接下载) 一,介绍 一些网站会 ...
- RPA学习天地:艺赛旗RPA机器人的4种类型和区别介绍
RPA学习天地为大家整理了RPA培训视频,欢迎关注,同步获取最新完整资料请关注 目前艺赛旗的有人值守机器人(助手机器人)和无人值守机器人都是需要先在控制台进行创建和配置账号才能使用,用户必须登录机器人 ...
- 艺赛旗RPA 网页处理系列(三):网页检查 / 审查小技巧
目前艺赛旗RPA已经更新到8.0版本,可以让所有用户免费下载试用http://www.i-search.com.cn/index.html?from=line1 (复制链接下载) 当需要进行网页操作的 ...
最新文章
- C++ Primer 5th笔记(2)chapter 2变量和基本类型:变量声明、关键字
- APS如何入门1-综述
- VUEJS-checkbox全选全不选
- 配置web项目session永不超时
- 时间管理—如何充分利用你的24小时
- 用CSV文件读写数据的两种方式(转)
- 英雄互娱:中止代理的《NBA LIVE》在中国大陆地区所有推广活动
- sqlmap工具使用用法详解
- Leetcode113.路径和II
- Axure添加官方元件库
- tinymce上传图片php,在angular2中使用tinymce富文本编辑,并实现上传图片功能
- mybatis-plus关联查询,一对一、一对多。
- 利用requests库和BeautifulSoup库爬取链家二手房的基本数据
- 判断听云是否正常嵌入及注意事项
- 微信二次开发资源整理
- 2020-08-31
- 互联网赚钱:死磕和专注
- C#实现图形的平移和缩放
- 使用左氧氟沙星4注意
- 开发一款APP需要多少钱
热门文章
- Android使用HttpURLConnection访问网络
- 【游戏案例学习】涂鸦跳跳笔记
- excel更改页眉页脚_带格式日期的Excel页脚
- 计算机突然关闭应用程序,应用程序无法正常启动(0xc000007b)。请单击“确定”关闭应用程序的解决方法...
- Image fusion in the loop of high-level vision tasks: Seafusion总结与代码注释
- 大学生计算机面试,大学生计算机毕业面试自我介绍
- 老夫整理的1000行MySQL学习笔记,等待有缘人
- 这5个“减压”小妙招,在你负重前行的路上会用到!
- 2022寒假day3
- 38、EST序列拼接流程