91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 7KB
    文件類型: .py
    金幣: 1
    下載: 1 次
    發布日期: 2021-06-08
  • 語言: Python
  • 標簽: python??excel文??

資源簡介

該程序實現了,對學生作業的相應文件的檢索,然后找出文件名中的學生學號;最后,在學生名單中,勾選出沒有交作業的學生,并將沒交作業的學生信息打印出來,保存在txt文本中。 方便作業的管理,同時可以根據自己的需要,再次開發出屬于自己的優質管理系統。

資源截圖

代碼片段和文件信息

“““
????:function??學生作業管理系統
????:note??????將沒有交作業的學生,在excel文件名單中標記,并生成相應的?txt?文件
????:problem???目前最多紀錄的作業數為?8?次作業,因為表格中的空余為?8?列,如果需要更多作業數
???????????????需要自己手動在excel文件中,插入行的列,方可實現更多數據錄入
“““
import?os
import?re????#?正則表達式支持包
import?xlwt??#?表格文件寫入包
import?xlrd??#?表格文件讀取包
from?openpyxl?import?*

#?獲取給定路徑下的所以文件
def?fileName(filePath):
????“““
????os.walk(filePath)??遍歷的是整個路徑下的文件
????返回的是一個元組,第一個元素是?當前目錄下的路徑?第二個是路徑下的子目錄
????第三個是?當前路徑下所有的非目錄文件
????:param?filePath:
????:return:?文件名中的數字字符
????“““
????retL?=?[]
????for?rootdirstpaths?in?os.walk(filePath):
????????#?print(root)??#?當前目錄下的路徑
????????#?print(dirs)??#?文件下的子目錄
????????#?print(tpath)?#?當前目錄下所有的非目錄文件
????????#?分離非目錄文件中的字符串
????????#?print(tpaths)
????????for?path?in?tpaths:
????????????retL.append(getNumber(path))
????return?retL

def?getNumber(inStr):
????“““
????從輸入的字符串中獲取數字字符串
????:param?inStr:
????:return:?outStr
????“““
????matchStr?=?r‘[0-9a-zA-Z]+‘?#?‘\d+‘??#?使用正則表達式進行匹配其中的數字數據
????s?=?re.findall(matchStrinStr)
????if?s==[]:
????????return?None
????else:
????????return?s[0]
????#?print(?re.findall(matchStr‘唐鴻2010bafg12‘)[0])

def?judgeFileExist(lstNumberdirStu):
????“““
????判斷學生作業是否存在
????:param?lstNumber:?學生作業文件名中的學號
????:param?dirStu:?學生姓名與學號信息
????:return:tmpDir:?返回沒有作業的學生信息
????“““
????tmpDir?=?dirStu.copy()???#?深層復制學生字典信息
????if?lstNumber==None?or?dirStu==None:
????????return
????if?not?isinstance(dirStudict):
????????return
????if?not?isinstance(lstNumberlist):
????????del?tmpDir[lstNumber]
????else:
????????lstLen?=?len(lstNumber)
????????for?nloop?in?range(lstLen):
????????????try:
????????????????strNumber?=?lstNumber[nloop]
????????????????del?tmpDir[strNumber]?#?刪除已交作業的人的信息
????????????except:
????????????????pass
????return?tmpDir

def?getXlsxDate(xlsxPath):
????“““
????獲取表格文件數據
????:param?xlsxPath:?表格文件路徑
????:return:?retdir:?dir類型數據
????“““
????retdir={}??#?使用字典,方便數據一一對應
????rdWb?=?xlrd.open_workbook(xlsxPath)??#?打開表格文件
????rdWs?=?rdWb.sheet_by_index(0)
????sheetRows?=?rdWs.nrows???#?表格行數
????sheetCols?=?rdWs.ncols???#?表格列數
????#?取出表格中的第一列和第二列數據
????for?row?in?range(5sheetRows):????#?學生信息從第5行開始的??其實也可以使用filter函數?濾除不是學號的信息
????????#?排除第一列非數字數據
????????stuName?=?rdWs.row_values(row)[2].replace(‘\xa0‘‘‘)
????????#?替換字符串中的?\xa0?標志符,這是轉碼時出現的問題,然后刪除字符串中的?空格字符
????????stuNumber?=?rdWs.row_values(row)[1].replace(‘\xa0‘‘‘).strip(‘?‘)
????????if?stuName==‘‘or?stuNumber==‘‘:
????????????pass
????????else:retdir[stuNumber]?=?stuName
????#?print(len(retdir))
????ret

評論

共有 條評論