python对excel操作加分系统学生加分

#这是一个给学生加分的小程序。需要提前把学生序号、姓名输入到excel中,保存为py.xls
#每次可以输入多个同学姓名,自动在表格内加1分。
import xlrd
import xlwt
from xlutils.copy import copy # as cp
import time

workbook = xlrd.open_workbook(r'D:\py.xls')
copy = copy(workbook)      #复制
#------------------------------------
c=1   #班级临时参数
while c>0:
    ban = input ('请输入班级:')#python3 里 input() 默认接收到的是 str 类型。
    if  ban.isdigit():  # 判断输入内容是不是数字
        ban = int(ban)         #将b转换为一个整数
        if ban == 3:  
           sheet1 = workbook.sheet_by_name('Sheet1')
           sheet1cooy = copy.get_sheet(0)
           break
        elif ban == 4:  
           sheet1 = workbook.sheet_by_name('Sheet2')
           sheet1cooy = copy.get_sheet(1)  #选择班级,复制sheet2
           break
        else:
          print('请重新输入班级:3或4')
          continue
    else:
        print('请重新输入班级:3或4')
        continue   
#--------------------------------------------------
#print (sheet1.cell_value(a,1),sheet1.cell_value(4,1)) #可连续输出
row_count=sheet1.nrows  #获取表格有效总行数
col_count= sheet1.ncols  #获取表格有效总列数

m = [col_count for i in range(500)]  #临时数组,用来统计那个学号加过几次分

print ('----------------------------')
b=1   #临时b
while b>0:
     list2 = input('请输入学号,用空格分隔多个数据:')
     #生成一个记录优秀学号的数组num
     num = [n for n in list2.split()]
     d=1   #临时d,提取输入的学号中的位置用
     while d>0:
          if d>len(num):  #当i太长后退出
              break
    
          if num[d-1].isdigit():  # 判断输入内容是不是数字
              num[d-1] = int(num[d-1])   
             # print(num[d-1])
          for i in range(1,row_count):     #i从1到最后一行行数遍历
            cell0 = sheet1.cell_value(i,0)   #获取第一列每一个数据
            cell1 = sheet1.cell_value(i,1) 
            if num[d-1] == cell0:   #如果输入的数字和第一列某个单元格的数字相同,则
                print (cell1)  #输出第二列中相应的姓名
                m[num[d-1]]=m[num[d-1]]+1
                print( m[num[d-1]])
                sheet1cooy.write(i, m[num[d-1]]-1, 1)
                #sheet1cooy.write(0, m[num[d-1]]-1, time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
                sheet1cooy.write(0, m[num[d-1]]-1, time.strftime('%m-%d',time.localtime(time.time())))
    
               
          d=d+1
     copy.save(r'D:\py.xls')
     print ('数据已保存!')
     break

生成exe文件:
需要pyinstaller
打开命令提示行,输入 pip install pyinstaller 等待安装成功。
进入代码所在目录
输入 d:
输入 D:\Program Files\Python37\my code
输入 pyinstaller -F test.py
上面的test.py即本脚本保存文件名。
注意:文件名不要为汉字。

猜你喜欢

转载自blog.csdn.net/weixin_42944682/article/details/82891259