Python数据分析基础之Excel文件(1)

参考资料:
《Python数据分析基础》,作者[美]Clinton W. Brownley,译者陈光欣,中国工信出版集团,人民邮电出版社

Excel文件简述

  Microsoft Excel是Microsoft为使用Windows和Apple Macintosh操作系统的电脑编写的一款电子表格软件,它几乎无处不在,是商业活动中不可或缺的工具。使用Python可以处理Excel文件中的数据。
  与Python的csv模块不同,Python中没有处理Excel文件的标准模块。我们需要安装xlrd和xlwt两个模块。

内省Excel工作簿

  我们创建一个Excel工作簿,并在其中添加3个独立的工作表,如下图所示。
在这里插入图片描述在这里插入图片描述在这里插入图片描述  Excel文件与CSV文件至少在两个重要方面有所不同。首先,CSV文件是纯文本文件,而Excel文件不是纯文本文件,我们不能在文本编辑器中打开它并查看数据。其次,与CSV文件不同,一个Excel工作簿被设计成包含多个工作表。
  通过内省一个工作簿,我们可以在实际开始处理工作簿中的数据之前,检查工作表的数目和每个工作表中的数据类型和数据量。
  下面我们使用Python分析上面的工作簿,来确定工作簿中工作表的数量、名称和每个工作表中行列的数量。

#!/usr/bin/env python3

import sys
from xlrd import open_workbook

input_file = sys.argv[1]

workbook = open_workbook(input_file)
print('Number of worksheets: ', workbook.nsheets)
for worksheet in workbook.sheets():
    print("Worksheet name: ", worksheet.name, "\tRows: ", worksheet.nrows, "\tColumns: ", worksheet.ncols)

  我们来解释一下上面的代码。

from xlrd import open_workbook

  这行代码导入xlrd模块的open_workbook()函数来读取和分析Excel文件。

workbook = open_workbook(input_file)

  这行代码使用open_workbook()函数打开一个Excel输入文件,并赋给对象workbook。可以使用这个对象从工作簿中得到单独的工作表。

for worksheet in workbook.sheets():
    print("Worksheet name: ", worksheet.name, "\tRows: ", worksheet.nrows, "\tColumns: ", worksheet.ncols)

  for循环语句在工作簿中的所有工作表之间迭代。workbook对象的sheets()方法可以识别出工作簿中所有的工作表。print语句使用workbook对象的name, nrows, ncols属性来确定每个工作表的名称以及行与列的数量。
  我们在命令行窗口中运行这个脚本,得到下面的输出结果。
在这里插入图片描述

发布了25 篇原创文章 · 获赞 9 · 访问量 2161

猜你喜欢

转载自blog.csdn.net/qq_45554010/article/details/104102682