实验五

#task.3

with open('data3.txt', 'r+', encoding = 'utf-8') as f,open('data3_processed.txt', 'r+', encoding = 'utf-8') as ff: num=[line.strip('\n') for line in f] num.pop(0) num_print=[eval(i) for i in num] print(f'原始数据:\n{num_print}') num_new=[round(eval(i))for i in num] print(f'四舍五入后的数据:\n{num_new}') write1=['原始数据']+[str(i)for i in num] write2=['四舍五入的数据']+[str(i)for i in num_new] f.seek(0) for i in range(len(num)): ff.write(f'{write1[i]}\t{write2[i]}\n')

 

#task.4

with open('data4.txt', 'r+', encoding = 'utf-8') as f,open('data4_processed.txt', 'r+', encoding = 'utf-8') as ff: list = [i.strip('\n').split('\t') for i in f] a = list.pop(0) list.sort(key=lambda x: (x[2], -int(x[3]))) print('\t'.join(a)) for i in list: print('\t'.join(i)) with open('data4jishiben.txt', 'w', encoding='utf-8') as f: ff.write('\t'.join(a)) ff.write('\n') for i in list: ff.write('\t'.join(i)) ff.write('\n')

#task.5

with open('data5.txt', 'r+', encoding = 'utf-8') as f,open('data5_with_line.txt', 'r+', encoding = 'utf-8') as ff: with open('data5.txt', 'r', encoding='utf-8') as f: data = ''.join([i for i in f]) print(f'行数:{len(data.splitlines())}') print(f'单词数:{len(data.split())}') print(f'空格数:{data.count(" ")}') print(f'字符数:{len(data)}') for i in range(len(data.splitlines())): ff.write(str(i + 1) + ' ' + str(data.splitlines()[i]) + '\n')

 

posted @ 2022-05-14 17:03  云处安  阅读(21)  评论(2编辑  收藏  举报