如何使用Python查找Excel表中空白单元格和非空白单元格的数量?

如何使用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模块从电子表格中提取数据)。
pip install xlrd
Bash
  • 创建一个变量来存储 Excel 表格中空单元格的数量。

  • 创建另一个变量来存储 Excel 表格中非空单元格的数量。

  • 将这两个计数变量都初始化为 0。

  • 创建一个变量来存储输入 Excel 文件的路径。

  • 为创建工作簿对象,将输入 Excel 文件传递给 xlrd 模块的 open_workbook() 函数(打开工作簿)。

  • 使用 sheet_by_index() 方法(按索引打开具体的工作表),打开给定工作簿中的第一个工作表(这里的 0 表示第一个工作表)。

  • 使用 for 循环遍历工作表中所有的行。使用属性 nrows 获取总行数。

  • 使用嵌套的 for 循环遍历工作表中所有的列。使用属性 ncols 获取总列数。

  • 使用 cell_value() 函数(指定行列后返回单元格的值)和 if 条件语句,判断单元格是否为空。

  • 如果单元格为空,则将空单元格计数增加 1。

  • 否则,将非空单元格计数增加 1。

  • 打印出给定输入 Excel 文件中发现的空单元格数量。

  • 打印出给定输入 Excel 文件中发现的非空单元格数量。

示例

以下程序将打印出给定输入 Excel 文件中找到的空和非空单元格数量:

import xlrd
# 存储空单元格的数量
emptyCells = 0

# 存储非空单元格的数量
nonEmptycells=0

# 输入 Excel 文件路径
inputExcelFile = "sampleTutorialsPoint.xlsx"

# 创建工作簿
newWorkbook = xlrd.open_workbook(inputExcelFile)

# 创建第一个工作表
firstWorksheet = newWorkbook.sheet_by_index(0)

# 遍历工作表中所有的行

#(使用 nrows 获取行数)
for each_row in range(firstWorksheet.nrows):

   # 遍历工作表中所有的列

   #(使用 ncols 获取列数)
   for each_column in range(firstWorksheet.ncols):

      # 检查单元格是否为空
      if (firstWorksheet.cell_value(each_row, each_column)==""):

         # 如果单元格为空,则将空单元格计数增加 1
         emptyCells+=1
      else  :

      # 否则,将非空单元格计数增加 1
      nonEmptycells+=1

# 打印出空单元格数量
print("Empty cells count = ", emptyCells)

# 打印出非空单元格数量
print("Non-empty cells count = ", nonEmptycells)
Bash

输出

执行代码后,会输出以下结果:

空单元格数量=10
非空单元格数量=67
Bash

我们在程序中使用了一个带有一些虚拟数据的示例Excel文件。该Excel文件中有一些空单元格。我们使用了两个变量来计算空单元格和非空单元格的数量,并使用for循环逐个遍历Excel文件单元格,检查单元格是否为空,并打印空单元格和非空单元格的数量。

结论

我们学习了如何使用xlrd模块将Excel文件作为工作簿获取,并将指定的工作表作为工作表获取。 我们还学习了如何逐个遍历Excel文件的单元格以及如何使用单元格值()函数获取单元格的值。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册