好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Python 處理表格進行成績排序的操作代碼

Python 處理表格進行成績排序的操作代碼

熱門標簽:電梯新時達系統外呼顯示e 旅游廁所地圖標注怎么弄 無錫智能外呼系統好用嗎 宿州電話機器人哪家好 成都呼叫中心外呼系統哪家強 西青語音電銷機器人哪家好 南昌地圖標注 地圖標注與注銷 百應電話機器人總部

一、需求分析

我們首先有一個成績表單,但是學生的成績是按照學號進行排序的,現在,我們希望清晰明了的知道每一個學生的名次,并且需要將學生按照成績的高低重新進行排序。

也就是說,我們將學生從按照學號排序轉變為按照成績從高到低進行排序。

二、代碼呈現

這個需求其實比較簡單,于是,我們直接呈現代碼,主要問題是Excel表格的讀寫操作,這個解決以后就十分簡單了。

Excel讀:xlrd模塊
Excel寫:xlwt模塊

代碼以及解釋如下:

import xlwt
import xlrd
# 導入模塊

wb = xlwt.Workbook()  
# 創建 excel 表格
xls_0 = xlrd.open_workbook("四年級1.xls")
# 讀取表格文件

for i in range(4, 8, 1):
    # 讀取不同的表單
    new_sheet = xls_0.sheet_by_index(i)
    sh = wb.add_sheet(f'{new_sheet.name}.xls')  # 創建一個 表單

    # 設置空列表進行數據的存儲
    id_list = []
    name_list = []
    score_list = []

    # 讀取表格的數據
    for o in range(3):  # 3 列
        for t in range(20):  # 20 行
            # 獲取學號、姓名、成績等信息
            id_list.append(new_sheet.cell(t + 3, 3 * o).value)
            name_list.append(new_sheet.cell(t + 3, 3 * o + 1).value)
            score_list.append(new_sheet.cell(t + 3, 3 * o + 2).value)
    # 獲取數據

    # 進行一定的預處理,去除不存在的人
    # 意思是說:有些位置是空的,這些位置需要去除掉
    for number in range(len(id_list)):
        # 由于進行的是刪除操作,所以可能會出現下標越界的情況,為了防止這種情況的出現,我們進行異常處理
        try:
            if name_list[number] == '' or score_list[number] == '' or score_list[number] == '請假':
                # 這個實際上是去除空值
                id_list.pop(number)
                name_list.pop(number)
                score_list.pop(number)
        except:
            continue
    # 去除不存在的人

    # 進行排序的操作
    for h in range(len(id_list)):
        # len(id_list) 次循環
        for s in range(len(id_list) - 1):
            # 這里是進行 len(id_list) - 1 次循環
            try:
                if score_list[s] >= score_list[s + 1]:
                    pass
                else:
                    score_list[s], score_list[s + 1] = score_list[s + 1], score_list[s]
                    name_list[s], name_list[s + 1] = name_list[s + 1], name_list[s]
                    id_list[s], id_list[s + 1] = id_list[s + 1], id_list[s]
            except:
                continue
    # 冒泡排序

    # 將數據寫入文件
    position = 0
    
    for h in range(len(id_list)):
        # 寫入文件
        sh.write(position, 0, id_list[h])
        sh.write(position, 1, name_list[h])
        sh.write(position, 2, score_list[h])
        position += 1
    # 寫入文件中去

# 保存文件

wb.save(f'四年級1-五至八班-分數排序.xls')  
# 保存

在這里,我們使用了冒泡排序,當然,如果想要運行的更快一些,可以考慮希爾排序,堆排序,快速排序等排序方式,但是要注意,學號、姓名、分數一定要同時進行排序,就是說這三個量應該捆綁在一起移動,而移動的原則就是分數高低。

三、成果展示

圖片1、

圖片2、


圖片3、

圖片4、

到此這篇關于Python 處理表格進行成績排序的操作代碼的文章就介紹到這了,更多相關Python成績排序內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python實現EXCEL表格的排序功能示例
  • python文件排序的方法總結
  • Python CategoricalDtype自定義排序實現原理解析
  • 用python給csv里的數據排序的具體代碼

標簽:七臺河 西安 許昌 雅安 渭南 辛集 濰坊 贛州

巨人網絡通訊聲明:本文標題《Python 處理表格進行成績排序的操作代碼》,本文關鍵詞  Python,處理,表格,進行,成績,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python 處理表格進行成績排序的操作代碼》相關的同類信息!
  • 本頁收集關于Python 處理表格進行成績排序的操作代碼的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 人人射人人干| 18禁黄网站禁片免费观看不卡| 又黄又爽又刺激的免费视频动漫网站 | 免费大黄网站| 国标精品视频在线播放| ririai666国产精品| 美女的mm视频网站q| 灭火英雄完整版在线播放| 巨胸喷奶水视频www免费观看| 女医肉奴隶在线观看| 李恩美三级无删减版电影| 日韩人妻丰满无码区A片| 非洲婬片毛片AAA毛片间| 美女扒开尿口让男人操| mm131美女大爽爽| 肉妇春潮干柴烈火第5集| 亚洲精品成人a 6 2v久久A片蜜臀| 翁公和我厨房猛烈进出| a级印度乱理伦片| 欧美黑人Videodesexo| 教室里调教大乳奶牛老师| 男同桌上课时狂揉我下面| 男同桌在我内裤里乱揉我的胸| 久久久久久免费一级A片| 五月狠狠精品人妻久久干综合| 色情成人小说软件| ??嫩草影院入口一二三免费| 91影院在线| 99精品国产AⅤv8在线观看| 理论片免费ā片在线观看| 成年人在线视频观看| 好爽 快点进来 在线观看| 夫妇当面交换在线播放欧美| 日韩欧美不卡| 脔到她哭h粗话H好爽小黄鸭| 麻豆91精品91久久久停运原因| 日本调教秘书在线观看| 亚洲精品一卡2卡3卡三卡四卡| 痴汉支配1~3动漫bd无修| 成人免费视频??国产免费天涯 | 欧美巨大黑人精品videos|