佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > python實(shí)現(xiàn)某考試系統(tǒng)生成word試卷

python實(shí)現(xiàn)某考試系統(tǒng)生成word試卷

熱門(mén)標(biāo)簽:客戶(hù)服務(wù) 呼叫中心市場(chǎng)需求 百度AI接口 電話(huà)運(yùn)營(yíng)中心 企業(yè)做大做強(qiáng) Win7旗艦版 語(yǔ)音系統(tǒng) 硅谷的囚徒呼叫中心

本文實(shí)例為大家分享了python實(shí)現(xiàn)某考試系統(tǒng)生成word試卷的具體代碼,供大家參考,具體內(nèi)容如下

提示:寫(xiě)完文章后,目錄可以自動(dòng)生成,如何生成可參考右邊的幫助文檔

準(zhǔn)備條件

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

2.安裝python依賴(lài)的模塊信息

pip install xlrd
pip install  python-docx

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

編碼實(shí)現(xiàn)

#!/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

#打開(kāi)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:
             #創(chuàng)建試題類(lèi)
             question = Question()
             question.ID = sheet.cell(i,0).value
             #添加試題的題目信息
             question.subject = sheet.cell(i,1).value
             #添加題目類(lèi)型
             question.question_type = sheet.cell(i,2).value
             #添加試題選項(xiàng)
             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)
   #將試卷題目隨機(jī)打亂并且返回
   random.shuffle(question_list)
   return question_list

def create_papper(file_name,paper_name,question_list):
    #創(chuàng)建一個(gè)文檔對(duì)象
    document = Document()
    #設(shè)置頁(yè)眉的位置信息
    section = document.sections[0]
    header = section.header
    p1 = header.paragraphs[0]
    p1.text = paper_name
    #設(shè)置頁(yè)腳信息
    footer = section.footer
    p2 = footer.paragraphs[0]
    p2.text = '內(nèi)部試題,禁止泄露'
    #寫(xiě)入試卷基本信息
    titile = document.add_heading(paper_name,level=1)
    #設(shè)置對(duì)齊方式
    titile.alignment = WD_ALIGN_PARAGRAPH.CENTER
    #添加一個(gè)段落
    p3 =  document.add_paragraph()
    p3.add_run('姓名:____')
    p3.add_run('班級(jí):____')
    p3.alignment =  WD_ALIGN_PARAGRAPH.CENTER
    #寫(xiě)入試題信息
    for i,question in enumerate(question_list):
        subject_paragraph = document.add_paragraph() #添加一個(gè)段落
        run = subject_paragraph.add_run(str(i+1)+str(question.subject)) #添加題目信息
        run.bold = True #設(shè)置加粗
        subject_paragraph.add_run('【%s】分'%str(question.score))
        #打亂選項(xiàng)的順序
        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()
    #循環(huán)生成100份試卷
    for item in range(1,100):
        create_papper('2021第'+str(item)+'套內(nèi)部考試試題.docx','2021第一季度內(nèi)部考試',question_list)
    print('over')

實(shí)現(xiàn)效果

總結(jié)

該案例綜合使用了xlrd模塊和python-docx模塊的一個(gè)讀寫(xiě)練習(xí)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • python提取word文件中的所有圖片
  • 使用Python自動(dòng)化Microsoft Excel和Word的操作方法
  • Python 制作詞云的WordCloud參數(shù)用法說(shuō)明
  • Python WordCloud 修改色調(diào)的實(shí)現(xiàn)方式
  • Python 自動(dòng)化修改word的案例
  • python 將Excel轉(zhuǎn)Word的示例
  • Python實(shí)現(xiàn)Word文檔轉(zhuǎn)換Markdown的示例
  • python3處理word文檔實(shí)例分析
  • Python word文本自動(dòng)化操作實(shí)現(xiàn)方法解析
  • Python快速優(yōu)雅的批量修改Word文檔樣式

標(biāo)簽:海南 山西 喀什 山西 長(zhǎng)沙 崇左 安康 濟(jì)南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python實(shí)現(xiàn)某考試系統(tǒng)生成word試卷》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話(huà)咨詢(xún)

    • 400-1100-266
    中超| 大埔县| 静安区| 洛浦县| 乌苏市| 永靖县| 碌曲县| 壤塘县| 南川市| 响水县| 三台县| 龙江县| 顺平县| 平安县| 南汇区| 子洲县| 巴彦淖尔市| 天津市| 乐清市| 临清市| 昭平县| 汽车| 西吉县| 逊克县| 石台县| 柳州市| 神农架林区| 思南县| 苏尼特右旗| 盐池县| 青铜峡市| 海原县| 威远县| 江津市| 余姚市| 纳雍县| 沈丘县| 贵港市| 财经| 涞源县| 清水河县|