Excel制作选择题试卷,Python快速汇总成绩
生活随笔
收集整理的這篇文章主要介紹了
Excel制作选择题试卷,Python快速汇总成绩
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Excel是最常用的辦公軟件,對于繁瑣、重復的操作,可以借助Python提升效率,節約時間。
一、Excel編輯選擇題。
1、Excel試卷基本格式。
?
?
A列、C列、D列合并相關單元格。
B列列寬最大,自動換行。題目一行,選擇項各占一行。
2、Excel試卷編輯,隱藏標答列、每題得分列、C2單元格分數。保護工作簿。
?
試卷內容編輯添加。
C列,答案可以設置數據驗證通過下拉列表選擇輸入。也可以設置直接通過鍵盤輸入。
D列,標答,隱藏列。
A2,B2,C6:C試卷最后一行單元格不鎖定,其他單元格全部鎖定。
保護工作簿。保護工作簿后除A2,B2,C6:C試卷最后一行單元格不鎖定外,其他單元格都不可編輯修改。若要修改,需密碼。
二、Python快速統計試卷得分。
1、試卷文件夾。
2、代碼。
#-*-coding:utf-8-*- import tkinter as tk from tkinter import filedialog import os import openpyxl as xlroot = tk.Tk() root.withdraw() FolderPath = filedialog.askdirectory() FilePath = FolderPath.replace("/", "\\\\")# 提取工作簿名 file_name_list = os.listdir(FilePath)data = [] # 遍歷工作簿 for i in range(len(file_name_list)):data.append([])workbook = xl.load_workbook(FilePath + "\\" + file_name_list[i])# 提取學號、姓名寫入列表datasheet = workbook.activedata[i].append(sheet["A2"].value)data[i].append(sheet["B2"].value)# 計算成績sum = 0for j in sheet.iter_rows(min_row = 6, max_row= 255, min_col = 3, max_col = 4):score_list = []for k in j:score_list.append(k.value)if score_list[0] == score_list[1] and score_list[1] is not None:sum += 1sum = sum * 2# 成績寫入數據列表datadata[i].append(sum)workbook.close()# 生成成績文件score.xlsx scorebook = xl.Workbook() sheet = scorebook.active for row in data:sheet.append(row) scorebook.save(filename = "score.xlsx")3、結果示例score.xlsx內容截圖。
三、打包生成EXE文件。
獲取瀏覽文件夾路徑,參考了
python通過對話框實現文件或文件夾路徑的選擇并獲得路徑_請選擇的博客-CSDN博客_python選擇文件夾
有關打包的方法,可參考?Python程序打包成.exe(史上最全面講解)_斷橋之蝶戀花的博客-CSDN博客
總結
以上是生活随笔為你收集整理的Excel制作选择题试卷,Python快速汇总成绩的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: agv ti 毫米波雷达_自动驾驶之——
- 下一篇: websocket python爬虫_p