人生苦短,我选Python

不知道各位同学有没有见过有关 Python 操作 Excel 的广告。小编是见过好多次的,还只需 ¥9.9 就能学习,今天小编就为大家带来免费的 Python 操作 Excel 的入门教程。

仔细看,仔细学,本文价值 ¥9.9 哦~~~

这牛逼吹得我自己都有点脸红。

既然要操作 Excel ,那我们就需要先建立一个 Excel 。

首先在 Excel 中创建 3 个 Sheet ,别跟我说不知道什么是 Sheet ,可能你不适合看本篇内容。

测试使用 Excel 已经上传至代码仓库,有需要的同学可以取用。

Excel 内容如下:

请先暂时忽略右下角的日期时间,这日期时间并无实际作用,仅用来演示使用。

这是一个 Sheet 的数据,同样的 Sheet 存在 3 个。

可能各位同学看到这个 Excel 以后大致能猜到小编要干啥了,对,没错,你猜对了,小编就是要算一下平均成绩。

那么用 Excel 自带的公式来算平均成绩不香么,非要用 Python 算,劳民伤财的。

Excel 自带的函数确实强大,这个不得不服,但是,我如果要跨 Sheet 的操作呢?本文要玩的骚操作就是要跨 Sheet 计算平均成绩。

首先,我们需要导入第三方模块 xlrd ,因为是第三方的模块,没有安装的同学需要先安装。在命令行中输入:

pip install xlrd

等待进度条走完就好了。

获取 workbook:

首先,我们需要在代码中打开我们刚才创建的 Excel :

workbook = xlrd.open_workbook('test.xlsx')

小编这里为了方便,将 test.xlsx 和代码放在同一目录,实际在操作中需注意文件的路径问题,不管是使用相对路径还是绝对路径,都要写对。

Sheet 有关操作:

有关 Sheet 的操作有很多,我们列举几个常用的:

# 输出所有 sheet 的名字

print(workbook.sheet_names())

# 获取所有的 sheet

print(workbook.sheets())

# 根据索引获取 sheet

print(workbook.sheet_by_index(1))

# 根据名字获取 sheet

print(workbook.sheet_by_name('1班'))

输出结果我这里就不演示了,各位同学自己操作下就知道了:)

常用操作:

获取行数和列数:

sheet1 = workbook.sheets()[0]

# 获取行数

print(sheet1.nrows)

# 获取列数

print(sheet1.ncols)

结果如下:

6

4

获取整行和整列的数据(数据类型为列表):

# 获取第 2 行内容

print(sheet1.row_values(1))

# 获取第 3 列内容

print(sheet1.col_values(2))

结果如下:

['小明', 76.0, 85.0, 95.0, '']

['数学', 85.0, 58.0, 96.0, '', '']

获取单元格的数据:

cell1 = sheet1.cell(1, 1).value

# 行索引

cell2 = sheet1.row(1)[1].value

cell3 = sheet1.cell(1, 2).value

# 列索引

cell4 = sheet1.col(2)[1].value

结果如下:

76.0 76.0 85.0 85.0

获取日期类型数据:

date_value = xlrd.xldate_as_datetime(sheet1.cell_value(5, 3), workbook.datemode)

print(type(date_value), date_value)

结果如下:

2019-11-07 20:49:05

这里是直接通过方法将数据转成了 datetime 类型, xlrd 还提供了可以将数据转成元组,然后再将元组转成日期。

date_tulp = xlrd.xldate_as_tuple(sheet1.cell_value(5, 3), workbook.datemode)

print(type(date_tulp), date_tulp)

year, month, day, hour, minute, second = date_tulp

print(datetime.datetime(year, month, day, hour, minute, second))

结果如下:

(2019, 11, 7, 20, 49, 5)

2019-11-07 20:49:05

今天的重头戏是求平均数,但是我不想在文章里贴代码了,只好请各位同学自己动下手咯~~~

成长离不开与优秀的伙伴共同学习,如果你需要好的学习环境,好的学习资源,职业规划,这里欢迎每一位热爱Python的小伙伴,Python学习圈

0基础python入门书籍 excel_零基础学Python3(23):Excel 基础操作(上)相关推荐

  1. 0基础python入门书籍 excel_【曾贤志】从零基础开始用Python处理Excel数据 - 第1季 基础篇...

    =====[曾贤志]从零基础开始用Python处理Excel数据 第1季 基础篇====== 1-1 什么是python? .mp4 1-2 为什么要学习用Python处理Excel表格? .mp4 ...

  2. 零基础python入门书籍推荐读哪些书?

    前言 零基础python入门书籍推荐读哪些书?很多Python 初学者都希望有经验的资深人士能推荐一些入门书籍,于是你就会搜到有网友推荐的超长的入门书单,然而这简直跟没推荐一样.这些书籍并不适合初学者 ...

  3. python零基础入门书籍-零基础python入门书籍推荐读哪些书?

    零基础python入门书籍推荐读哪些书?很多Python 初学者都希望有经验的资深人士能推荐一些入门书籍,于是你就会搜到有网友推荐的超长的入门书单,然而这简直跟没推荐一样.这些书籍并不适合初学者,对于 ...

  4. 零基础python入门书籍-零基础如何学好python?推荐6本入门书籍,帮你打基础

    第二部分将理论付诸实践,讲解如何开发三个项目,包括简单的Python 2D 游戏开发如何利用数据生成交互式的信息图,以及创建和定制简单的Web 应用,并帮读者解决常见编程问题和困惑. 豆瓣书友推荐:很 ...

  5. 金融python入门书籍_零基础想系统地学习金融学、量化投资、数据分析、python,需要哪些课程、书籍?有哪些证书可以考?...

    7.10更新,最近写了关于量化交易的一些文章: -------------------------分割------------------------- 感谢大家的支持!我要把下文当中视频全部放出来给 ...

  6. 学python买什么书好-学python3什么书好

    推荐<python编程从入门到实战>.本书语言通俗易懂,示例演示丰富,即使没有基础,也可以理解. 关于学python的几点建议和其他书籍: 一.如果你一点Python知识都不懂,那么请选这 ...

  7. 想学python买什么书好-学python3什么书好

    推荐<python编程从入门到实战>.本书语言通俗易懂,示例演示丰富,即使没有基础,也可以理解. 关于学python的几点建议和其他书籍: 一.如果你一点Python知识都不懂,那么请选这 ...

  8. 零基础python入门书籍-零基础学Python,不容错过的入门书籍

    原标题:零基础学Python,不容错过的入门书籍 Python是一门美丽的语言.它简单易学,跨平台,而且运转良好.一言以蔽之就是:其他的语言是与时代同步,而Python则是"未雨绸缪&quo ...

  9. 零基础python入门书籍推荐书目_铁粉看过来!送书啦,Python推荐书单,送书10本!...

    原标题:铁粉看过来!送书啦,Python推荐书单,送书10本! 上个月送书福利不断,一波接一波,今天小编带来了一份非常不错的Python书单,非常感谢博文视点的大力支持,这次的书涉及Python入门, ...

最新文章

  1. SiteMesh介绍
  2. NLP实战:利用Python理解、分析和生成文本 | 赠书
  3. appender log4j 扩展_java-如何在log4j2中创建自定义Appender?
  4. Spring中property-placeholder的使用与解析
  5. volatile和synchronized的区别
  6. CCNP路由实验---12、配置分发列表和被动接口
  7. 【Python】青少年蓝桥杯_每日一题_10.11_小球反弹
  8. 002 通过send断点分析功能call
  9. 【opencv4】opencv视频教程 C++(opencv教程)1、opencv介绍和环境搭建
  10. 天平应什么放置_天平是否应该放干燥剂?
  11. 即时聊天IM之二 openfire 整合现有系统用户
  12. ip访问次数统计 nginx_Linux分析Nginx日志统计IP访问次数的shell脚本
  13. 无向图的深度优先遍历非递归_图算法总结
  14. 1000道Python题库系列分享四(40道)
  15. c语言计算题怎么输出答案,C语言练习题答案
  16. java ioutils 写入文件_IOUtils和FileUtils的学习笔记
  17. 2D激光雷达的多传感器拼接
  18. docker修改nginx容器主页内容信息【还能这样操作?】
  19. TYVJ P1061 [Mobile Service]
  20. 计算机网络笔记4 网络层

热门文章

  1. 解决Python中文注释报错
  2. 深入剖析Android音频(三)AudioPolicyService
  3. 你没有变强,是因为你一直很舒服
  4. Win10纯净版系统下载、制作和安装过程-联想客服建议
  5. hive表指定分区字段搜索_hive导出分区表到mysql 分区字段值怎么取
  6. oracle-00028,Oracle 10g錯誤:「ORA-00028:您的會話已被終止」
  7. 一分钟带你全面了解计算机考研常识,让你对考研不再陌生!
  8. spring学习--基于注解方式创建对象AOP
  9. 80c51流水灯汇编语言,单片机AT89C51可控流水灯课程设计报告(汇编语言).docx
  10. 英雄多少钱steam_Steam农历新年特卖:越来越火热的中国单机游戏市场 | 游戏干线...