1 / 11
文档名称:

python编程实例.pdf

格式:pdf   大小:331KB   页数:11页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

python编程实例.pdf

上传人:977562398 2019/1/18 文件大小:331 KB

下载得到文件列表

python编程实例.pdf

文档介绍

文档介绍:目的:用一个实例总结学****到的with语句,函数,列表推导,集合,排序,字符分割等内容要求:分别以james,julie,mikey,sarah四个学生的名字建立文本文件,分别存储各自的成绩,时间格式都精确为分秒,时间越短成绩越好,分别输出每个学生的无重复的前三个最好成绩,且分秒的分隔符要统一为“.”数据准备:-34,3:21,,,,2:01,2:01,3:10,2-,,2:11,2:23,3-10,2-23,3:10,,3-:22,,3:01,,3:02,,3:22,,2::58,,2:39,2-25,2-55,2:54,,2:55,2:('C:\Python33\HeadFirstPython\hfpy_code\chapter5')#件所在的目录定义函数从文件中取值#get_filedatadefget_filedata(filename):try:语句打开和自动关闭文件withopen(filename)asf:#with从文件中逐行读取字符data=()#将字符间的空格清除后,用逗号分隔字符return(().split(','))#exceptIOErrorasioerr:异常处理,打印错误print('FileError'+str(ioerr))#定义函数将所有文件中的时分表达方式统一为分return(None)#modify_time_format“.秒”defmodify_time_format(time_string):if"-"intime_string:splitter="-"elif":"intime_string:splitter=":"else:splitter="."用分隔符分隔字符后分别存入(mins,secs)=(splitter)#splitter和minssecs定义函数返回文件中排名前三的不重复的时间return(mins+'.'+secs)#get_prev_three成绩defget_prev_three(filename):new_list=[modify_time_format(each_t)foreach_tinget_filedata(filename)]采用列表推导将统一时分表达方式后的记录生成新的列表#采delete_repetition=set(new_list)#用集合函数删除新列表中重复项,并生成新的集合set采in_order=sorted(delete_repetition)#用复制排序函数对无重复性的新集合进行排序sorted返回列return(in_order[0:3])#表前三项分别输出对应文件中排名前三的不重复的时间成绩#print(get_prev_three(""))print(get_prev_three(""))print(get_prev_three(""))print(get_prev_three(""))【程序1】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?#Filename:=0#countthesumofresultforiinrange(1,5):forjinrange(1,5):forkinrange(1,5):ifi!=jandi!=kandj!=k:printi*100+j*10+kcnt+=t程序2】题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?1#Filename:=int(raw_input('Entertheprofit:'))3arr=[1000000,600000,400000,200000,100000,0]4rat=[,,,,,]5r=06foridxinrange(0,6):7ifi>arr[idx]:8r+=(