亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

基于Python實(shí)現(xiàn)簡(jiǎn)單的學(xué)生點(diǎn)名系統(tǒng)

 更新時(shí)間:2022年09月13日 10:26:46   作者:輕松學(xué)Python  
現(xiàn)在的學(xué)生大部分都很積極,會(huì)主動(dòng)舉手回答問(wèn)題。但是,也會(huì)遇到一些不好的情況,比如年級(jí)越高主動(dòng)舉手的人越少,所以本文做了一個(gè)隨機(jī)的學(xué)生點(diǎn)名系統(tǒng)可以幫老師解決這些問(wèn)題

今年教師節(jié)前夕,我特意用Python做了個(gè)學(xué)生點(diǎn)名系統(tǒng),非常好用,送給各科老師、輔導(dǎo)員當(dāng)節(jié)日禮物,老師們都喜滋滋,說(shuō)平常逃課就原諒我了,我心想,這次畢業(yè)應(yīng)該不是問(wèn)題了~

本文背景

根據(jù)我的調(diào)查,現(xiàn)在的學(xué)生大部分都很積極,會(huì)主動(dòng)舉手回答問(wèn)題。但是,也會(huì)遇到一些不好的情況,比如年級(jí)越高主動(dòng)舉手的人越少,有些班級(jí)舉手的通常都是少部分積極的學(xué)生,有部分學(xué)生從來(lái)不舉手。

所以我做了一個(gè)一個(gè)隨機(jī)的學(xué)生點(diǎn)名系統(tǒng)可以幫老師解決這些問(wèn)題。

隨機(jī)點(diǎn)名會(huì)從全班學(xué)生中隨機(jī)點(diǎn)一個(gè)學(xué)生,這樣所有人都有機(jī)會(huì)回答問(wèn)題,促進(jìn)教育公平。

點(diǎn)名系統(tǒng)有幾秒鐘滾動(dòng)的時(shí)間,會(huì)增加學(xué)生的緊張感,讓開(kāi)小差的學(xué)生也趕緊集中精神,起到一點(diǎn)督促學(xué)習(xí)的作用。

如果真的沒(méi)有學(xué)生舉手,老師也不用為難,點(diǎn)名系統(tǒng)可以作為老師的“殺手锏”。

實(shí)際情況中可以一部分時(shí)間靠學(xué)生主動(dòng),一部分時(shí)間用點(diǎn)名系統(tǒng),靈活使用。

效果展示

本文用Python實(shí)現(xiàn)了一個(gè)非常好用的學(xué)生點(diǎn)名系統(tǒng),文末名片提供打包好的系統(tǒng)下載方式。先看一下效果:

實(shí)現(xiàn)方式

1、讀取excel表格

openpyxl是Python中用于讀寫(xiě)excel文件非常方便的庫(kù),pip install openpyxl安裝即可使用。

本文用openpyxl來(lái)讀取excel中的所有學(xué)生姓名。

def get_students_name():
    # 學(xué)生名單中需要有"姓名"列
    workbook = openpyxl.load_workbook('學(xué)生名單.xlsx')
    table = workbook.active
    rows, cols = table.max_row, table.max_column
    name_col = 0
    for col in range(cols):
        if table.cell(1, col + 1).value == '姓名':
            name_col = col
            break
    students_name = [table.cell(row+1, name_col+1).value for row in range(1, rows)
                     if table.cell(row+1, name_col+1).value is not None]
    return students_name

2、搭建系統(tǒng)界面

tkinter是Python中GUI編程非常好用的庫(kù),而且是標(biāo)準(zhǔn)庫(kù),不需要安裝,導(dǎo)入即可使用。

本文用tkinter搭建學(xué)生點(diǎn)名系統(tǒng)的界面,并在界面上實(shí)現(xiàn)點(diǎn)名按鈕和顯示點(diǎn)名結(jié)果。

if __name__ == '__main__':
    window = tk.Tk()
    window.geometry('600x400+400+180')
    window.title('\t 第一屆LOL點(diǎn)名系統(tǒng)')
    # 添加背景圖片
    bg_png = tk.PhotoImage(file="背景圖片.png")
    bg_label = Label(window, image=bg_png)
    bg_label.pack()
    # 添加顯示框
    var = StringVar(value='公平 公正 公開(kāi)')
    show_label1 = Label(window, textvariable=var, justify='left', anchor=CENTER, width=16,
                        height=2, font='楷體 -40 bold', foreground='white', bg='#1C86EE')
    show_label1.place(anchor=tk.NW, x=130, y=90)
    # 添加點(diǎn)名按鈕
    button_png = tk.PhotoImage(file='button.png')
    button = Button(window, text='點(diǎn) 名', compound='center', font='楷體 -30 bold',
                    foreground='#9400D3', image=button_png,
                    command=lambda: call_lucky_student(var))
    button.place(anchor=NW, x=235, y=200)
    # 顯示窗口
    window.mainloop()

3、隨機(jī)選擇學(xué)生

random庫(kù)是Python中用于實(shí)現(xiàn)隨機(jī)功能的庫(kù),也是Python的標(biāo)準(zhǔn)庫(kù),不需要安裝,導(dǎo)入即可使用。

本文用random從學(xué)生名單中隨機(jī)選擇一個(gè)姓名,結(jié)合time模塊設(shè)置延時(shí),實(shí)現(xiàn)點(diǎn)名按鈕的業(yè)務(wù)邏輯函數(shù)。

def call_lucky_student(var):
    """點(diǎn)名"""
    global is_run
    if is_run:
        return
    is_run = True
    start = time.time()
    choice_student(var, start)


def choice_student(var, start):
    global is_run
    show_member = random.choice(get_students_name())
    name = show_member[0]
    for zi in show_member[1:]:
        name += ' ' + zi
    var.set(name)
    end = time.time()
    if is_run and end-start <= 5:
        window.after(30, choice_student, var, start)
    else:
        is_run = False
        return

4、將代碼打包成exe

pyinstaller庫(kù)是用于將Python程序打包成exe可執(zhí)行文件的庫(kù),pip install pyinstaller安裝即可使用。

本文用pyinstaller將點(diǎn)名系統(tǒng)的代碼打包成exe文件,這樣系統(tǒng)可以發(fā)給老師使用,不懂編程也沒(méi)關(guān)系。

使用說(shuō)明

使用說(shuō)明:

1.下載本系統(tǒng)后,解壓文件,將整個(gè)文件夾保存到電腦中(建議不要放在桌面)。

2.打開(kāi)學(xué)生名單excel表格,將學(xué)生姓名和學(xué)號(hào)輸入表格中,保存。(刪除本文的虛擬名單)

3.找到student.exe ,右鍵創(chuàng)建一個(gè)桌面快捷方式。

4.在桌面雙擊打開(kāi)點(diǎn)名系統(tǒng),即可正常使用。

到此這篇關(guān)于基于Python實(shí)現(xiàn)簡(jiǎn)單的學(xué)生點(diǎn)名系統(tǒng)的文章就介紹到這了,更多相關(guān)Python學(xué)生點(diǎn)名系統(tǒng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python中BeautifulSoup通過(guò)查找Id獲取元素信息

    Python中BeautifulSoup通過(guò)查找Id獲取元素信息

    這篇文章主要介紹了Python中BeautifulSoup通過(guò)查找Id獲取元素信息,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Python中生成隨機(jī)密碼的常用方法小結(jié)

    Python中生成隨機(jī)密碼的常用方法小結(jié)

    密碼是信息安全的基石,它用于保護(hù)我們的賬戶、數(shù)據(jù)和隱私,在本文中,將討論多種Python方法,用于生成隨機(jī)密碼的實(shí)用示例和技巧,感興趣的可以了解下
    2024-02-02
  • Python中正則表達(dá)式的用法實(shí)例匯總

    Python中正則表達(dá)式的用法實(shí)例匯總

    這篇文章主要介紹了Python中正則表達(dá)式的用法實(shí)例匯總,非常實(shí)用,需要的朋友可以參考下
    2014-08-08
  • Python如何根據(jù)頁(yè)碼處理PDF文件的內(nèi)容

    Python如何根據(jù)頁(yè)碼處理PDF文件的內(nèi)容

    在Python中,fitz庫(kù)可以用于多種任務(wù),如打開(kāi)PDF文件、遍歷頁(yè)面、添加注釋、提取文本、旋轉(zhuǎn)頁(yè)面等,此外,它還可以用于在PDF頁(yè)面上添加高亮注釋、提取圖像等操作,這篇文章主要介紹了Python根據(jù)頁(yè)碼處理PDF文件的內(nèi)容,需要的朋友可以參考下
    2024-06-06
  • 淺談django框架集成swagger以及自定義參數(shù)問(wèn)題

    淺談django框架集成swagger以及自定義參數(shù)問(wèn)題

    這篇文章主要介紹了淺談django框架集成swagger以及自定義參數(shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-07-07
  • pandas中concat函數(shù)實(shí)現(xiàn)橫向連接

    pandas中concat函數(shù)實(shí)現(xiàn)橫向連接

    在pandas中,concat函數(shù)可用于合并不同的Series和DataFrame對(duì)象,本文主要介紹了pandas中concat函數(shù)實(shí)現(xiàn)橫向連接,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-04-04
  • tensorflow 恢復(fù)指定層與不同層指定不同學(xué)習(xí)率的方法

    tensorflow 恢復(fù)指定層與不同層指定不同學(xué)習(xí)率的方法

    今天小編就為大家分享一篇tensorflow 恢復(fù)指定層與不同層指定不同學(xué)習(xí)率的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • Python實(shí)現(xiàn)aes加密解密多種方法解析

    Python實(shí)現(xiàn)aes加密解密多種方法解析

    這篇文章主要介紹了Python實(shí)現(xiàn)aes加密解密多種方法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • pycharm配置Anaconda虛擬環(huán)境全過(guò)程

    pycharm配置Anaconda虛擬環(huán)境全過(guò)程

    這篇文章主要介紹了pycharm配置Anaconda虛擬環(huán)境全過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • pytest之a(chǎn)ssert斷言的具體使用

    pytest之a(chǎn)ssert斷言的具體使用

    這篇文章主要介紹了pytest之a(chǎn)ssert斷言的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04

最新評(píng)論