1 / 17
文档名称:

Python编程实例.doc

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

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

分享

预览

Python编程实例.doc

上传人:wz_198614 2017/10/31 文件大小:24 KB

下载得到文件列表

Python编程实例.doc

文档介绍

文档介绍:Python编程实例
目的:用一个实例总结学****到的with语句,函数,列表推导,集合,排序,字符分割等内容
要求:分别以james,julie,mikey,sarah四个学生的名字建立文本文件,分别存储各自的成绩,时间格式都精确为分秒,时间越短成绩越好,分别输出每个学生的无重复的前三个最好成绩,且分秒的分隔符要统一为“.”
数据准备:分别建立四个文本文件
2-34,3:21,,,,2:01,2:01,3:10,2-22
,,2:11,2:23,3-10,2-23,3:10,,3-21
2:22,,3:01,,3:02,,3:22,,2:38
2:58,,2:39,2-25,2-55,2:54,,2:55,2:55
import os
('C:\Python33\HeadFirstPython\hfpy_code\chapter5') #将工作空间修改为文件所在的目录
#定义函数get_filedata从文件中取值def get_filedata(filename):
try:
with open(filename) as f: #with语句打开和自动关闭文件
data=() #从文件中逐行读取字符
return (().split(',')) #将字符间的空格清除后,用逗
号分隔字符
except IOError as ioerr:
print ('File Error' + str(ioerr)) #异常处理,打印错误
return (None)#定义函数modify_time_format将所有文件中的时分表达方式统一为“”def modify_time_format(time_string):
if"-"in time_string:
splitter="-"
elif":"in time_string:
splitter=":"
else:
splitter="."
(mins, secs)=(splitter) #用分隔符splitter分隔字符后分别存入mins和secs
return (mins+ '.' +secs)#定义函数get_prev_three返回文件中排名前三的不重复的时间成绩def get_prev_three(filename):
new_list=[modify_time_format(each_t) for each_t in get_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:
cnt = 0#count the sum of resultfor i in range(1,5):
for j in range(1,5):
for k in range(1,5):
if i!=j and i!=k and j!=k:
print i*100+j*10+k
cnt+=t
程序2】
题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于