#task3
with open('data3.txt','r',encoding='utf-8')as f1:
with open('data3_processed.txt','w',encoding='utf-8')as f2:
a=f1.read().split('\n')
a.pop(0)
c=[]
d=[eval(i) for i in a]
for i in a:
x=eval(i)
if x-int(x)<0.5:
c.append(int(eval(i)))
else:
c.append(int(eval(i))+1)
d2=[int(i)for i in c]
f2.write(f'原始数据\t四舍五入后的数据\n')
for i in range(len(d)):
f2.write(f'{d[i]}\t\t{d2[i]}\n')
print(f'原始数据:\n{d}\n四舍五入后的数据:\n{c}')
![]()
![]()
#task4
with open('data4.txt','r',encoding='utf-8') as f:
data=f.readlines()
data.remove(data[0])
x0=[]
for i in data:
a=i.split()
x0.append(a)
x1=sorted(x0,key=(lambda x:x[2]))
x2=[x1[i] for i in range(0,8)]
x3=sorted(x2,key=(lambda x:x[3]),reverse=True)
x4=[x1[i] for i in range(8,10)]
x5=sorted(x4,key=(lambda x:x[3]),reverse=True)
y=x3+x5
y1=[]
for i in y:
b='\t'.join(i)
b=b+'\n'
y1.append(b)
y1.insert(0,'学号\t姓名\t专业\t分数\n')
for i in y1:
print(i)
with open('data4_processed.txt','w',encoding='utf-8') as f:
for i in y1:
f.write(i)
![]()
![]()
#task5
with open('data5.txt','r',encoding='utf-8')as f:
with open('data5_with_line.txt', 'w', encoding='utf-8') as f1:
a=f.read().strip('\n')
b = len(a.splitlines())
print('行数:', b)
c = len(a.split())
print('单词数:', c)
d = 0
for i in a:
if i == ' ':
d += 1
print('空格数:', d)
e = 0
for e, number in enumerate(a):
e += 1
print('字符数:', e)
a=a.split('\n')
n='\n'.join(a)
for i in range(len(a)):
f1.write(f'{i+1}.{a[i]}\n')
![]()