午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術(shù)文章
文章詳情頁

Python 處理表格進(jìn)行成績排序的操作代碼

瀏覽:58日期:2022-07-28 08:59:02
一、需求分析

我們首先有一個(gè)成績表單,但是學(xué)生的成績是按照學(xué)號(hào)進(jìn)行排序的,現(xiàn)在,我們希望清晰明了的知道每一個(gè)學(xué)生的名次,并且需要將學(xué)生按照成績的高低重新進(jìn)行排序。

也就是說,我們將學(xué)生從按照學(xué)號(hào)排序轉(zhuǎn)變?yōu)榘凑粘煽儚母叩降瓦M(jìn)行排序。

二、代碼呈現(xiàn)

這個(gè)需求其實(shí)比較簡(jiǎn)單,于是,我們直接呈現(xiàn)代碼,主要問題是Excel表格的讀寫操作,這個(gè)解決以后就十分簡(jiǎn)單了。

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

代碼以及解釋如下:

import xlwtimport xlrd# 導(dǎo)入模塊wb = xlwt.Workbook() # 創(chuàng)建 excel 表格xls_0 = xlrd.open_workbook('四年級(jí)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’) # 創(chuàng)建一個(gè) 表單 # 設(shè)置空列表進(jìn)行數(shù)據(jù)的存儲(chǔ) id_list = [] name_list = [] score_list = [] # 讀取表格的數(shù)據(jù) for o in range(3): # 3 列for t in range(20): # 20 行 # 獲取學(xué)號(hào)、姓名、成績等信息 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) # 獲取數(shù)據(jù) # 進(jìn)行一定的預(yù)處理,去除不存在的人 # 意思是說:有些位置是空的,這些位置需要去除掉 for number in range(len(id_list)):# 由于進(jìn)行的是刪除操作,所以可能會(huì)出現(xiàn)下標(biāo)越界的情況,為了防止這種情況的出現(xiàn),我們進(jìn)行異常處理try: if name_list[number] == ’’ or score_list[number] == ’’ or score_list[number] == ’請(qǐng)假’:# 這個(gè)實(shí)際上是去除空值id_list.pop(number)name_list.pop(number)score_list.pop(number)except: continue # 去除不存在的人 # 進(jìn)行排序的操作 for h in range(len(id_list)):# len(id_list) 次循環(huán)for s in range(len(id_list) - 1): # 這里是進(jìn)行 len(id_list) - 1 次循環(huán) try:if score_list[s] >= score_list[s + 1]: passelse: 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 # 冒泡排序 # 將數(shù)據(jù)寫入文件 position = 0for 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’四年級(jí)1-五至八班-分?jǐn)?shù)排序.xls’) # 保存

在這里,我們使用了冒泡排序,當(dāng)然,如果想要運(yùn)行的更快一些,可以考慮希爾排序,堆排序,快速排序等排序方式,但是要注意,學(xué)號(hào)、姓名、分?jǐn)?shù)一定要同時(shí)進(jìn)行排序,就是說這三個(gè)量應(yīng)該捆綁在一起移動(dòng),而移動(dòng)的原則就是分?jǐn)?shù)高低。

三、成果展示

圖片1、

Python 處理表格進(jìn)行成績排序的操作代碼

圖片2、

Python 處理表格進(jìn)行成績排序的操作代碼圖片3、

Python 處理表格進(jìn)行成績排序的操作代碼

圖片4、

Python 處理表格進(jìn)行成績排序的操作代碼

到此這篇關(guān)于Python 處理表格進(jìn)行成績排序的操作代碼的文章就介紹到這了,更多相關(guān)Python成績排序內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 超碰黄色| 一本久草| 国产午夜精品一区二区三区嫩草 | 中文字幕第| 噼里啪啦国语完整在线观看高清 | 成人在线免费观看网站 | 91视频a | 日韩成人三级 | 日韩精品一区二区三区丰满 | 99热这里只有精品7 国产精品成熟老女人 | 日本欧美一区 | 国产精品国产三级国产aⅴ无密码 | 欧美日韩一区视频 | 国产精品9 | 成年人黄网站 | 日韩一区精品 | 中文字幕 视频一区 | 伊人国产视频 | 国产片一区二区 | 成人国产一区 | 超碰啪啪| 欧美亚洲国产精品 | 五月天激情在线 | 一区国产精品 | 精品一区二区三区中文字幕 | 天天躁日日躁狠狠躁 | 中国黄色一级视频 | 8050午夜一级| 不卡av在线免费观看 | 成人小视频在线播放 | 超碰在线网 | 日韩视频在线免费观看 | 三上悠亚在线播放 | 亚洲乱熟 | 99久久香蕉 | 天天撸夜夜操 | 欧美精品在线观看 | 五月婷婷综合网 | 精品久久成人 | 日韩中文一区二区 | 国产亚洲欧美视频 |