日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python学习实例(6)

發(fā)布時(shí)間:2023/12/13 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python学习实例(6) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
#============================= #6.6 文件系統(tǒng)(File System) #=============================#+++++++++++++++++++++++++++++ #6.6.3 Python中的文件操作 #+++++++++++++++++++++++++++++#<程序:讀取文件os.py> f = open("./Task1.txt",'r'); fls = f.readlines() for line in fls:line = line.strip(); print (line) f.close()#<程序:讀取文件os.py,計(jì)算并寫回> f = open("./Task1.txt",'r+'); fls = f.readlines() for line in fls:line = line.strip(); lstr = line.split()if lstr[0] == '3':res = 0for e in lstr[1:]:res+=int(e) f.write('\n4 '+str(res)); f.close()#+++++++++++++++++++++++++++++ #6.6.4 學(xué)生實(shí)例4.6.3擴(kuò)展 #+++++++++++++++++++++++++++++#<程序:存儲(chǔ)考試結(jié)果到class1.txt文件> class student:def __init__ (self,mname,studentID):self.name = mname; self.StuID = studentID; self.Course_Grade = {};self.Course_ID = []; self.GPA = 0; self.Credit = 0def selectCourse(self,CourseName,CourseID):self.Course_Grade[CourseID]=0; #CourseID:0 加入字典self.Course_ID.append(CourseID) # CourseID 加入列表self.Credit = self.Credit+ CourseDict[CourseID].Credit #總學(xué)分?jǐn)?shù)更新def getInfo(self):print("Name:",self.name);print("StudentID",self.StuID);print("Course:")for courseID,grade in self.Course_Grade.items():print(CourseDict[courseID].courseName,grade)print("GPA",self.GPA); print("Credit",self.Credit); print("")def TakeExam(self, CourseID):self.Course_Grade[CourseID]=random.randint(50,100)self.calculateGPA()def Grade2GPA(self,grade):if(grade>=90):return 4elif(grade>=80):return 3elif(grade>=70):return 2elif(grade>=60):return 1else:return 0def calculateGPA(self):g = 0;#遍歷每一門所修的課程for courseID,grade in self.Course_Grade.items():g = g + self.Grade2GPA(grade)* CourseDict[courseID].Creditself.GPA = round(g/self.Credit,2)class Course:def __init__ (self,cid,mname,CourseCredit,FinalDate):self.courseID = cidself.courseName = mnameself.studentID = []self.Credit = CourseCreditself.ExamDate = FinalDatedef SelectThisCourse(self,stuID): #記錄誰修了這門課,在studentID列表里self.studentID.append(stuID)def setupCourse (CourseDict): #建立CourseList: list of Course objectsCourseDict[1]=Course(1,"Introducation to Computer Science",4,1)CourseDict[2]=Course(2,"Advanced Mathematics",5,2)CourseDict[3]=Course(3,"Python",3,3)CourseDict[4]=Course(4,"College English",4,4)CourseDict[5]=Course(5,"Linear Algebra",3,5)def setupClass (StudentDict): #輸入一個(gè)空列表NameList = ["Aaron","Abraham","Andy","Benson","Bill","Brent","Chris","Daniel","Edward","Evan","Francis","Howard","James","Kenneth","Norma","Ophelia","Pearl","Phoenix","Prima","XiaoMing"] stuid = 1for name in NameList:StudentDict [stuid]=student(name,stuid) #student對(duì)象的字典stuid = stuid + 1def SelectCourse (StudentList, CourseList):for stu in StudentList: #每一個(gè)學(xué)生修幾門課CourseNum = random.randint(3,len(CourseList)) #修CourseNum數(shù)量的課#隨機(jī)選,返回列表CourseIndex = random.sample(range(len(CourseList)), CourseNum)for index in CourseIndex:stu.selectCourse(CourseList[index].courseName,CourseList[index].Credit)CourseList[index].SelectThisCourse(stu.StuID)def ExamSimulation (StudentList, CourseList):for day in range(1,6): #Simulate the datefor cour in CourseList:if(cour.ExamDate==day): # Hold the exam of course on that dayfor stuID in cour.studentID:for stu in StudentList:if(stu.StuID == stuID): #student stuID selected this coursestu.TakeExam(cour.courseID)import random CourseDict={} StudentDict={} setupCourse(CourseDict) setupClass(StudentDict) SelectCourse(list(StudentDict.values()),list(CourseDict.values())) ExamSimulation(list(StudentDict.values()),list(CourseDict.values()))SaveToFile = ["ID"," ","Name"," ","Credit"," ","GPA","\n"] for stu in StudentDict.values():SaveToFile.append(str(stu.StuID))SaveToFile.append(" ")SaveToFile.append(str(stu.name))SaveToFile.append(" ")SaveToFile.append(str(stu.Credit))SaveToFile.append(" ")SaveToFile.append(str(stu.GPA))SaveToFile.append("\n") f = open("class1.txt","w") f.writelines(SaveToFile) f.close()#<程序:查詢文件class1.txt中滿足某條件的學(xué)生信息> def select(path,col,op,val):f = open(path,"r")colNum = 0if col == "ID": colNum = 0elif col == "Name": colNum = 1elif col == "Credit": colNum = 2elif col == "GPA": colNum = 3f.readline()Info = f.readlines()res = []for e in Info:e = e.strip()eList = e.split()if colNum != 1:exp = eList[colNum] + op + valelse:exp = "'" + eList[colNum] + "'" + op + "'" + val + "'"if eval(exp):res.append(e)f.close()return res for e in select("class1.txt","Credit",">=","15"):print (e)#<程序:對(duì)文件class1.txt中學(xué)生進(jìn)行排序> def sort(path,col,direct): #direct表示排序方向,">"為從大到小排序,"<"相反。colNum = 0if col == "Credit": colNum = 2elif col == "GPA": colNum = 3ifrev = Falseif direct == ">":ifrev = Truef = open(path,"r")f.readline()Info = f.readlines()res = []for e in Info:eList = e.split()res.append(eList)res =sorted(res, key=lambda res: res[colNum],reverse=ifrev) #第三個(gè)參數(shù)為排序方向f.close()return res L = [('b',2),('a',1),('c',3),('d',4)] print (sorted(L, key=lambda x:x[1]))

?

總結(jié)

以上是生活随笔為你收集整理的python学习实例(6)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。