如何使用Python查找Excel表中空白单元格和非空白单元格的数量?
在本文中,我们将展示如何使用python查找Excel工作表中空白单元格和非空白(已填充)单元格的计数。
假设我们已经拿到了一个名为 demoTutorialsPoint.xlsx 的Excel文件,其中包含一些随机数据和一些 空白 单元格。我们将返回Excel工作表中空白单元格和非空白(已填充)单元格的计数。
sampleTutorialsPoint.xlsx
球员名字 | 年龄 | 类型 | 国家 | 队伍 | 得分 | 掷球次数 | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
维拉特·科利 | 打者 | 印度 | 皇家挑战者班加罗尔队 | 20 | |||||||||
34 | 打者 | 印度 | 太阳升之旅队 | 333 | 140 | ||||||||
马亨德拉·辛格·多尼 | 39 | 打者 | 印度 | 金超超王者队 | 0 | ||||||||
拉希德·汗 | 投手 | 古吉拉特泰坦队 | 500 | 130 | |||||||||
哈迪克·潘迪亚 | 29 | 通用 | 古吉拉特泰坦队 | 2400 | 85 | ||||||||
大卫·华纳 | 34 | 打者 | 澳大利亚 | 5500 | 12 | ||||||||
凯隆·波拉德 | 35 | 通用 | 西印度群岛 | 孟买印度人队 | 0 | 67 | |||||||
罗希特·沙玛 | 33 | 打者 | 印度 | 孟买印度人队 | 5456 | 20 | 凯恩·威廉姆森 | 33 | 打者 | 太阳升之旅队 | 3222 | 5 | |
铁算盘·拉巴达 | 29 | 投手 | 南非 | 幸运的首都 | 335 | 1 |
算法(步骤)
执行所需任务的算法/步骤如下所示-
- 使用import关键字,导入 xlrd模块 (使用xlrd模块从电子表格中读取数据。它具有读取、写入和修改数据的能力。此外,用户可能需要遍历多个表格以根据某些条件获取数据或修改特定的行和列等。使用xlrd模块从电子表格中提取数据)。
-
创建一个变量来存储 Excel 表格中空单元格的数量。
-
创建另一个变量来存储 Excel 表格中非空单元格的数量。
-
将这两个计数变量都初始化为 0。
-
创建一个变量来存储输入 Excel 文件的路径。
-
为创建工作簿对象,将输入 Excel 文件传递给 xlrd 模块的 open_workbook() 函数(打开工作簿)。
-
使用 sheet_by_index() 方法(按索引打开具体的工作表),打开给定工作簿中的第一个工作表(这里的 0 表示第一个工作表)。
-
使用 for 循环遍历工作表中所有的行。使用属性 nrows 获取总行数。
-
使用嵌套的 for 循环遍历工作表中所有的列。使用属性 ncols 获取总列数。
-
使用 cell_value() 函数(指定行列后返回单元格的值)和 if 条件语句,判断单元格是否为空。
-
如果单元格为空,则将空单元格计数增加 1。
-
否则,将非空单元格计数增加 1。
-
打印出给定输入 Excel 文件中发现的空单元格数量。
-
打印出给定输入 Excel 文件中发现的非空单元格数量。
示例
以下程序将打印出给定输入 Excel 文件中找到的空和非空单元格数量:
输出
执行代码后,会输出以下结果:
我们在程序中使用了一个带有一些虚拟数据的示例Excel文件。该Excel文件中有一些空单元格。我们使用了两个变量来计算空单元格和非空单元格的数量,并使用for循环逐个遍历Excel文件单元格,检查单元格是否为空,并打印空单元格和非空单元格的数量。
结论
我们学习了如何使用xlrd模块将Excel文件作为工作簿获取,并将指定的工作表作为工作表获取。 我们还学习了如何逐个遍历Excel文件的单元格以及如何使用单元格值()函数获取单元格的值。