簡體   English   中英

使用python從Excel工作表獲取數據時遇到問題

[英]Having trouble fetching data from excel sheet using python

我附上了一張excel工作表,並在下面的python代碼的幫助下,嘗試獲取那些安全分數低於40或出勤率低於75%的卷號。

但是每次我運行代碼時,我都會遇到一條錯誤消息:

追溯(最近一次通話):87.0文件“ C:/ Users / Shubham Mishra / PycharmProjects / Python / jacc.py”,第11行,在value1 =(int)(worksheet.cell(i,2).value)ValueError中:int()以10為底的無效文字:“出勤”

import xlrd
workbook=xlrd.open_workbook('log.xls')
worksheet=workbook.sheet_by_index(0)  
print(worksheet.cell(1,2).value) 

i=1
n=6

for i in range(n):
    value1 = (int)(worksheet.cell(i, 2).value)
    value2 = (worksheet.cell(i, 3).value)

    if ((value1<=75) or (value2<=40)):
        print(worksheet.cell(i,1))

在此處輸入圖片說明

您代碼中的主要問題是range函數以0開頭。
因此,第一個循環的迭代是:

value1 = (int)(worksheet.cell(0, 2).value)

對應於“出勤”字符串。
這是原因,因為您有此錯誤。

您應該考慮通過以下方式更改代碼:

n=7
for i in range(1, n):
    value1 = (int)(worksheet.cell(i, 2).value)
    value2 = (worksheet.cell(i, 3).value)

    if ((value1<=75) or (value2<=40)):
         print(worksheet.cell(i,1))

請注意, n等於7而不是6。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM