欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

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

本文背景

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

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

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

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

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

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

效果展示

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

實現(xiàn)方式

1、讀取excel表格

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

本文用openpyxl來讀取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編程非常好用的庫,而且是標(biāo)準(zhǔn)庫,不需要安裝,導(dǎo)入即可使用。

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

if __name__ == '__main__':
    window = tk.Tk()
    window.geometry('600x400+400+180')
    window.title('\t 第一屆LOL點名系統(tǒng)')
    # 添加背景圖片
    bg_png = tk.PhotoImage(file="背景圖片.png")
    bg_label = Label(window, image=bg_png)
    bg_label.pack()
    # 添加顯示框
    var = StringVar(value='公平 公正 公開')
    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)
    # 添加點名按鈕
    button_png = tk.PhotoImage(file='button.png')
    button = Button(window, text='點 名', 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、隨機選擇學(xué)生

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

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

def call_lucky_student(var):
    """點名"""
    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庫是用于將Python程序打包成exe可執(zhí)行文件的庫,pip install pyinstaller安裝即可使用。

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

使用說明

使用說明:

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

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

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

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

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

相關(guān)文章

  • Python中BeautifulSoup通過查找Id獲取元素信息

    Python中BeautifulSoup通過查找Id獲取元素信息

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

最新評論