使用Excel和Python的考勤跟踪器

时间:2013-01-28 08:02:57

标签: python excel xlrd xlwt xlutils

我是空军支队的副翼指挥官我是去大学的。我的工作的一个责任是出席。机翼内有四个中队。每个中队每周都会出席,我必须将出勤记录转移到用Excel工作表编写的考勤跟踪器上。你可以想象,这是一项非常繁琐的工作。因为我知道一些编程(我是高级comp sci专业),所以我决定编写一个自动转移出勤的python脚本。我正在使用xlrd / xlwt / xlutils,但我遇到了一些问题。基本上我要做的是使用学员的姓名和从一个工作表中获取的出勤状态来创建键值对,并将值导出到出勤跟踪器。也许我会解决这个错误,但它并没有那么好用。到目前为止,我唯一能做的就是将一个文件的出勤率导入到程序中的键值对中。当我尝试导出这些值时会出现问题。我发布了一个问题here已经解决,还有一个与我的小项目有关的未答复here。以下是我到目前为止的代码:

from xlrd import open_workbook

wb = open_workbook('week1/AFROTC SP13 Eagles Sqaudron Weekly Attendance.xls')

LLab = {}
PT = {}

for s in wb.sheets():
    if s.name == "LLab":
        for row in range(s.nrows):
            values = []
            for col in range(s.ncols):
                values.append(s.cell(row,col).value)
            if values[1] == "0" or values[1] == "1":
                LLab[values[0]]=int(values[1])

    elif s.name == "PT":
        for row in range(s.nrows):
            values = []
            for col in range(s.ncols):
                if s.cell(row,col).value != "PT #1" and s.cell(row,col).value != "PT #2":
                    values.append(s.cell(row,col).value)
            if len(values) == 3:
                PT[values[0]]=[int(values[1]), int(values[2])]

print "LLab"
for key in LLab:
    print key,
    print LLab[key]

print
print

print "PT"
for key in PT:
    print key,
    print PT[key][0],
    print PT[key][1]

现在只从一个文件导入出勤(有四个,每个中队一个)。

0 个答案:

没有答案