实验5 文件应用编程
一、实验内容
3.实验任务3
task3.py:
1 with open("D:\桌面\实验5数据文件\实验5数据文件\data3.txt",'r',encoding='utf-8') as f1: 2 with open("D:\桌面\实验5数据文件\实验5数据文件\data3_processed.txt", 'w', encoding='utf-8') as f2: 3 a=f1.read().split('\n') 4 a.pop(0) 5 c=[] 6 d=[eval(i) for i in a] 7 for i in a: 8 x=eval(i) 9 if x-int(x)<0.5: 10 c.append(int(eval(i))) 11 else: 12 c.append(int(eval(i))+1) 13 d2=[int(i) for i in c] 14 f2.write(f'原始数据\t四舍五入后的数据\n') 15 for i in range(len(d)): 16 f2.write(f'{d[i]}\t\t{d2[i]}\n') 17 print(f'原始数据:\n{d}\n四舍五入后的数据:\n{c}')
运行截图:
4.实验任务4
task4.py:
1 with open("D:\桌面\实验5数据文件\实验5数据文件\data4.txt",'r',encoding='utf-8') as f1: 2 with open("D:\桌面\实验5数据文件\实验5数据文件\data4_processed.txt",'w',encoding='utf-8')as f2: 3 a=f1.readlines() 4 b=[i.strip('\n').split('\t') for i in a] 5 c=b.pop(0) 6 y=[sorted(b,key=lambda x:(x[2],-int(x[3])))] 7 f2.write('\t\t'.join(c)+'\n') 8 print('\t\t'.join(c)) 9 for i in y: 10 for j in i: 11 print(' \t'.join(j)) 12 f2.write('\t\t'.join(j)+'\n')
运行截图:
5.实验任务5
task5.py:
1 with open("D:\桌面\实验5数据文件\实验5数据文件\data5.txt",'r',encoding='utf-8') as f1: 2 with open("D:\桌面\实验5数据文件\实验5数据文件\data5_with_line.txt", 'w', encoding='utf-8') as f2: 3 a=f1.read().strip('\n') 4 a=a.split('\n') 5 b='\n'.join(a) 6 space=0 7 for i in range(len(a)): 8 for x in a[i]: 9 if x == ' ': 10 space+= 1 11 else: 12 space=space 13 f2.write(f'{i+1} {a[i]}\n') 14 print(f'行数:{len(a)}') 15 print(f'单词数:{len(b.split())}') 16 print(f'空格数:{space}') 17 print(f'字符数:{len(b)}')
运行截图:
二、实验总结
通过本次实验,我对格式化的操作更加熟练了,但还有所欠缺,以后会多加练习。