试验五
任务六
with open ('data6.csv','r',encoding='gbk')as f: o,g=[],[] reader=f.readlines() for i in range(1,len(reader)): x=eval(reader[i].strip('\n')) o.append(x) g.append(int(x+0.5)) reader[i]=[str(x),str(int(x+0.5))] reader[0] = [reader[0].strip('\n'), '四舍五入后数据'] print('原始数据:\n',o) print('四舍五入后数据:\n', g) with open('data6.csv','w',encoding='gbk')as f: for i in range(len(reader)): f.write(','.join(reader[i])+'\n')


任务七
1 with open('data7.csv','r',encoding='gbk')as f: 2 read=f.readlines() 3 data=[read[i].strip('\n').split(',') for i in range(1,len(read))] 4 title=read[0].strip('\n').split(',') 5 s=sorted(data,key=lambda x:x[3],reverse=True) 6 e=sorted(s,key=lambda x:x[2]) 7 for i in title: 8 print(i,end=' ') 9 for i in e: 10 print() 11 for x in i: 12 print(f'{x:<5}',end=' ') 13 with open('data7.csv','w',encoding='gbk')as f: 14 f.write(','.join(title) + '\n') 15 for item in e: 16 f.write(','.join(item) + '\n')


任务八
1 with open('hamlet.txt','r',encoding='utf-8')as f: 2 l=f.read() 3 n=l.split() 4 x=l.split('\n') 5 print('行数:',len(x)) 6 print('单词数:',len(n)) 7 print('字符数:',len(l)) 8 print('空格数:',l.count(' ')) 9 with open('hamlet_with_line_number.txt','w',encoding='utf-8')as f: 10 for i in range(len(x)): 11 f.write(f'{i+1} '+x[i]+'\n')


任务九
1 def is_valid(x): 2 if len(x)!=18: 3 return False 4 for i in range(len(x)-1): 5 if x[i] not in '1234567890': 6 return False 7 if x[17] not in '1234567890X': 8 return False 9 else: 10 return True 11 with open('data9_id.txt','r',encoding='utf-8')as f: 12 data=f.readlines() 13 l=[line.strip('\n').split(',') for line in data] 14 x=[i for i in l if is_valid(i[1])] 15 for i in x: 16 i.append(2023 - eval(i[1][6:10])) 17 i[1]=i[1][6:10]+'-'+i[1][10:12]+'-'+i[1][12:14] 18 x=sorted(x,key=lambda i:i[2],reverse=True) 19 print('姓名','出生日期','年龄') 20 for i in x: 21 print(','.join(str(a) for a in i))

任务十
1 import datetime 2 import random 3 with open('data10_stu.txt','r',encoding='utf-8')as f: 4 data=f.readlines() 5 m=datetime.date.today() 6 print('*'*14+'抽点开始'+'*'*14) 7 y,x=set(),0 8 while True: 9 c,n=set(),eval(input('输入随机抽点人数:')) 10 x+=n 11 if n==0: 12 print('*'*14+'抽点结束'+'*'*14) 13 break 14 while len(y)<x: 15 a=random.randint(0,79) 16 if data[a] not in y: 17 c.add(data[a]) 18 y.add(data[a]) 19 for i in list(c): 20 print(i.strip('\n')) 21 with open(f'{m}.txt','w',encoding='utf-8')as f: 22 for i in list(y): 23 f.write(i)


浙公网安备 33010602011771号