小白学自动化!终于开始写了!!!

简介: 小白学自动化!终于开始写了!!!

大家好,我是Kuls。

好久不见,国庆这几天去大理、丽江玩了一圈,非常推荐,风景简直是非常的nice。很适合去放松自己。

从今天开始,K哥要给大家写一写自动化相关的文章,其实Python写自动化是非常方便的,不管你是Java开发、Go开发、Python开发,学一下自动化其实是很有必要的。

其实在工作的时候,我们有时会去写一些自动化脚本来解放我们劳动力。

好了,废话不多说,开整。

首先要学习Python自动化,基础知识一定是要具备的,像Python的一些基础的语法以及使用方法。

如果你不了解Python,可以去看公众号里面写过的Python基础合集。


什么是自动化?

从字面意思我们就可以知道----自动帮我们去完成某件事

其实在我们日常工作中有很多重复性的劳动,当我们掌握了自动化知识,这些完全可以避免掉。

那K哥写的这个系列主要会讲哪些方面的自动化呢?

office三件套---Excel、PPT、Word,这三者肯定是必讲的,我们很多时候都是在这些文件中进行操作。

除了这三者,我还会来讲讲浏览器相关的自动化、PDF自动化等。


自动化有什么用?

第一点,解法自己的双手,这个毋庸置疑的。

第二点,你可以做出自己的一些小工具。

第三点,.......

为了方便各位读者的理解,我不会像很多教程中一样直接将一些方法列出来。

我希望能够通过一步步实践的方法来教会大家。


1.png


今天主要跟大家聊聊Excel相关的自动化,想去学习Excel相关的自动化,那么我们必须先要去了解excel。

Excel其实有两种格式,一个是xls,一个是xlsx。


2.png


就例如上面两种,这两种有什么区别呢?

K哥从网上搜集了一些资料,大家可以看看:

1、文件格式不同。xls 是一个特有的二进制格式,其核心结构是复合文档类型的结构,而 xlsx 的核心结构是 XML 类型的结构,采用的是基于 XML 的压缩方式,使其占用的空间更小。xlsx 中最后一个 x 的意义就在于此。

2、版本不同。xls是excel2003及以前版本生成的文件格式,而xlsx是excel2007及以后版本生成的文件格式。

3、兼容性不同。xlsx格式是向下兼容的,可兼容xls格式。

----(来自百度知道)

这里K哥也来补充一下,xls类型的最多可以写入65535行、256列的数据,而xlsx可以最多写入1048576行、16384列的数据。

这点是很重要的,如果你的数据量非常大,比xlsx的最大数据量还要大,那你可能要使用其他的存储数据方式了。

了解完了xls和xlsx两种excel的格式,接下来就开始学习自动化相关知识了。

因为excel是一个文件,这也就意味着我们需要从外部读取它,此时就会用到第三方库xlrd来进行读取。

第一步当然是来安装第三方库:


pip install xlrdorpip3 install xlrd


安装成功后,我们来对Python进击者.xlsx文件进行读取


3.png


# 导入第三方库import xlrd# 读取Python进击者.xlsx文件a = xlrd.open_workbook('Python进击者.xlsx')


此时Python进击者.xlsx已经被读取在a变量当中了,那么怎么对它进行一些简单的操作呢?


4.png


首先我们要清楚的是一个excel当中会存在多个工作表,也就是上图中红框的地方,这里我们建有三张表。

如何选择哪张工作表,其实有三种实现方式:


# 第一种sheet = a.sheet_by_index(0)# 第二种sheet = a.sheet_by_name('Sheet1')# 第三种sheet = a.sheets()[0]


其中索引从0开始,0就代表第一张工作表。

选取了特定的工作表,那么真正操作数据的步骤来了。


5.png


我在表格中插入了四条数据,如何来获取第一行第二列的数据呢?


data = sheet.cell_value(0,1)


其实非常的简单,只需要通过cell_value方法来获取即可。


# 导入第三方库import xlrd# 读取Python进击者.xlsx文件a = xlrd.open_workbook('Python进击者.xlsx')# 第一种sheet = a.sheet_by_index(0)# # 第二种# sheet = a.sheet_by_name('Sheet1')# # 第三种# sheet = a.sheets()[0]data = sheet.cell_value(0,1)print(data)


汇总一下代码,我们来看下运行之后的输出结果:


6.png


发现与我们想的是一致的。

总结一下,整体的步骤如下:


7.png


除了对指定单元格进行操作,在实际的开发中我们也许想要知道整个表格的数据有多少行,多少列,工作表有多少等等。

其实xlrd也给我们提供了相关的函数,我们直接对其进行调用就行了。


# 获取工作表行数rows_num = sheet.nrows# 获取工作表列数cols_num = sheet.ncols
# 工作表数量sheets_num = a.nsheets# 工作表名称sheets_names = a.sheet_names()# 所有工作表sheets = a.sheets()


其实知道了以上这些知识,我们可以实现通过Python来获取一个excel文件中所有表格的所有数据,你能实现吗?

具体的代码我会放在公众号后台,你可以回复【自动化1】进行获取。

好了,今天的文章就到这,大家肯定没看过瘾,下篇文章更精彩!

据说点个在看,知识更容易进脑子!

相关文章
|
4月前
|
监控 测试技术 Docker
【步步惊心】Flask应用云端之旅:从本地调试到一键上线的终极秘籍!
【8月更文挑战第31天】本文详细介绍了将基于Flask框架的Web应用从本地开发环境部署到云平台的全过程。首先,通过示例代码展示了如何搭建本地环境并测试应用。接着,讲解了如何使用Docker构建生产环境镜像。最后,以Heroku为例,说明了如何将应用部署到云平台,并介绍了监控与维护的方法。通过本文的最佳实践,你可以轻松完成Flask应用的部署。
57 0
|
1月前
|
前端开发 JavaScript 开发工具
独家揭秘:前端大牛们都在用的高效开发工具,你get了吗?
前端开发领域日新月异,Visual Studio Code、Webpack、React/Vue和Git等工具凭借高效、便捷的特点,深受前端大牛们青睐。本文将揭秘这些工具的使用技巧,帮助你提升开发效率,轻松应对各种前端挑战。
32 3
|
4月前
|
前端开发 开发者 Python
Flask框架之谜:如何用Blueprints神技轻松制胜模块化应用?
【8月更文挑战第31天】随着Flask应用规模扩大,代码管理和模块化变得至关重要。Blueprints作为Flask提供的强大工具,支持将应用分割成包含独立路由、视图、模板和静态文件的模块,从而提高代码清晰度与重用性。本文通过创建前端和后台管理两个蓝图的示例,展示了如何在Flask中使用Blueprints实现应用模块化,简化大型应用开发与维护工作,提升代码结构的清晰度及团队协作效率。
34 0
|
4月前
|
测试技术 数据库
探索JSF单元测试秘籍!如何让您的应用更稳固、更高效?揭秘成功背后的测试之道!
【8月更文挑战第31天】在 JavaServer Faces(JSF)应用开发中,确保代码质量和可维护性至关重要。本文详细介绍了如何通过单元测试实现这一目标。首先,阐述了单元测试的重要性及其对应用稳定性的影响;其次,提出了提高 JSF 应用可测试性的设计建议,如避免直接访问外部资源和使用依赖注入;最后,通过一个具体的 `UserBean` 示例,展示了如何利用 JUnit 和 Mockito 框架编写有效的单元测试。通过这些方法,不仅能够确保代码质量,还能提高开发效率和降低维护成本。
57 0
|
7月前
|
前端开发 数据可视化 搜索推荐
数据驱动的前端设计与开发实践
本文将介绍如何在前端设计与开发中充分利用数据驱动的方法,通过数据分析、用户行为追踪和可视化等手段,指导前端界面设计和功能开发,提高用户体验和产品质量。
|
运维 监控 jenkins
Eolink 让我“重新认识“了自动化测试...
在互联网公司中,测试人员绝对是不可缺少的角色,但是想要成为一名合格的测试人员,能力可不能只停留在一直点点点,必须要保持一个不断学习的状态,比如掌握 自动化测试的能力。
Eolink 让我“重新认识“了自动化测试...
|
监控 安全 测试技术
热饭的测开成果盘点第二十五期:WEB多端自动化平台
热饭的测开成果盘点第二十五期:WEB多端自动化平台
热饭的测开成果盘点第二十五期:WEB多端自动化平台
|
程序员
小白学自动化| Excel自动化太简单了....
小白学自动化| Excel自动化太简单了....
188 0
小白学自动化| Excel自动化太简单了....
|
Web App开发 测试技术 Python
[雪峰磁针石博客]flask构建自动化测试平台3-模板
3-模板 理想情况下,前端和后端组件之间的完全隔离。我们可以在很大程度上使用Jinja来实现这一目标。 到本章将扩展我们的应用程序,为所选出版物显示不止一个标题。我们将为每个出版物显示多篇文章,每篇文章都链接到原始文章,我们的逻辑和视图组件将在很大程度上分开。