为什么我的结果是空白的

时间:2016-02-08 22:29:18

标签: python excel

我是python的新手,我使用XLRD从excel中读取。我尝试使用以下代码检查每行第一个单元格的值与我的变量mid

import xlrd

file_location="Z:/DASHBOARD/test.xls"
workbook = xlrd.open_workbook(file_location)
sheet = workbook.sheet_by_index(0)
mid=5348120284087186


for row_count in range(sheet.nrows):
    if (sheet.cell_value(row_count, 0)==mid):
        print sheet.row_values(row_count)

当我注释掉if语句时,它运行正常而不检查,显示行。使用if语句,我得不到任何结果。 5348120284087186是多行中第一个单元格中的值和mid的值。是否有额外的格式我需要使用xlrd才能找到该值?我试图不使用该变量,只使用5348120284087186作为具有相同结果的语句的比较。

1 个答案:

答案 0 :(得分:0)

您写道:尝试使用int()来修复范围内的row_count(sheet.nrows):

if (int(sheet.cell_value(row_count, 0))==mid): 
    print sheet.row_values(row_count) 

导致错误陈述:

ValueError: invalid literal for int() with base 10: 'Run Date: ' 

这意味着单元格中的值不是您想象的整数,而是“运行日期:”。