Python 为什么我的成绩是空白的
我是python新手,我使用XLRD从excel中读取数据。我试图使用以下代码对照变量Python 为什么我的成绩是空白的,python,excel,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):
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
作为具有相同结果的语句的比较。您写道:尝试使用int()修复范围内的行数(sheet.nrows):
导致错误陈述:
ValueError: invalid literal for int() with base 10: 'Run Date: '
这意味着单元格中的值不是您认为的整数,而是“运行日期:”。您有正确的数据类型吗?尝试打印类型(表单元格值(行计数,0))。我怀疑输入ID是以字符串形式出现的。将其与整数进行比较,每次都会得到**False。用引号将整数值括起来,或用int(**)将sheet.cell括起来。。。参考。能否打印sheet.cell\u value(row\u count,0)的值并确定其类型。类型为
unicode
尝试使用int()对范围内的row\u count(sheet.nrows)进行修复:如果(int(sheet.cell\u value(row\u count,0))=mid):打印sheet.row\u值(row\u count)这导致错误声明:ValueError:int()的文本无效,基数为10:“运行日期:”
您需要打印与mid比较的值以了解发生了什么
ValueError: invalid literal for int() with base 10: 'Run Date: '