中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用python實現某考試系統生成word試卷

發布時間:2022-02-19 16:41:16 來源:億速云 閱讀:215 作者:iii 欄目:開發技術

本篇內容介紹了“如何用python實現某考試系統生成word試卷”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

準備條件

1.試題excel信息,存放在名為data.xls的excel文件中

2.安裝python依賴的模塊信息

pip install xlrd
pip install  python-docx

提示:以下是本篇文章正文內容,下面案例可供參考

編碼實現

#!/bin/bash env python
import xlrd
import  random
from  docx import  Document
from docx.shared import Pt, RGBColor
from docx.enum.text import  WD_ALIGN_PARAGRAPH

#打開excel
data = xlrd.open_workbook('data.xls')
#獲取工作表
sheet = data.sheet_by_index(0)

class Question:
   pass
def create_question():
   question_list = []
   for i in range(sheet.nrows):
       if i>2:
             #創建試題類
             question = Question()
             question.ID = sheet.cell(i,0).value
             #添加試題的題目信息
             question.subject = sheet.cell(i,1).value
             #添加題目類型
             question.question_type = sheet.cell(i,2).value
             #添加試題選項
             question.option = []
             question.option.append(sheet.cell(i, 3).value)  # A
             question.option.append(sheet.cell(i, 4).value)  # B
             question.option.append(sheet.cell(i, 5).value)  # C
             question.option.append(sheet.cell(i, 6).value)  # D
             #添加分值
             question.score = sheet.cell(i,7).value
             question_list.append(question)
   #將試卷題目隨機打亂并且返回
   random.shuffle(question_list)
   return question_list

def create_papper(file_name,paper_name,question_list):
    #創建一個文檔對象
    document = Document()
    #設置頁眉的位置信息
    section = document.sections[0]
    header = section.header
    p1 = header.paragraphs[0]
    p1.text = paper_name
    #設置頁腳信息
    footer = section.footer
    p2 = footer.paragraphs[0]
    p2.text = '內部試題,禁止泄露'
    #寫入試卷基本信息
    titile = document.add_heading(paper_name,level=1)
    #設置對齊方式
    titile.alignment = WD_ALIGN_PARAGRAPH.CENTER
    #添加一個段落
    p3 =  document.add_paragraph()
    p3.add_run('姓名:____')
    p3.add_run('班級:____')
    p3.alignment =  WD_ALIGN_PARAGRAPH.CENTER
    #寫入試題信息
    for i,question in enumerate(question_list):
        subject_paragraph = document.add_paragraph() #添加一個段落
        run = subject_paragraph.add_run(str(i+1)+str(question.subject)) #添加題目信息
        run.bold = True #設置加粗
        subject_paragraph.add_run('【%s】分'%str(question.score))
        #打亂選項的順序
        random.shuffle(question.option)
        for index,option in enumerate(question.option):
            document.add_paragraph(('ABCD')[index]+str(option))
    #保存試題
    document.save(file_name)
    return

if __name__ == '__main__':
    question_list = create_question()
    #循環生成100份試卷
    for item in range(1,100):
        create_papper('2021第'+str(item)+'套內部考試試題.docx','2021第一季度內部考試',question_list)
    print('over')

“如何用python實現某考試系統生成word試卷”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

开鲁县| 武胜县| 望谟县| 海盐县| 新源县| 惠来县| 龙泉市| 南郑县| 商丘市| 陕西省| 明溪县| 临高县| 潢川县| 苍溪县| 江孜县| 金湖县| 金堂县| 疏勒县| 克山县| 新丰县| 宣汉县| 砚山县| 循化| 黎城县| 海安县| 叙永县| 仁寿县| 武胜县| 华蓥市| 兴山县| 上栗县| 寿阳县| 千阳县| 信丰县| 曲周县| 墨玉县| 远安县| 呼和浩特市| 丰原市| 渑池县| 宁陕县|