python作业(文件)

1

  1. 读入一个Python程序,将其单行的注释(即 每一行“#”后面的内容)
    删除后保存;删除后保存
def del_note(old_filename,new_filename):
    with open(old_filename)as f1, \
        open(new_filename,'w')as f2:
        for lines in f1.readlines():
            if lines.strip()[0]!='#':
                f2.write(lines)


del_note('test.py','test1.py')
     

在这里插入图片描述
在这里插入图片描述

随机生成100个学生的成绩保存在文件scores.txt文件中;
(1) 从文件中读出学生的成绩,输出最高、最低,以及平均成绩(平均成绩为小数)。
(2) 从文件中读出学生的成绩,统计90分以上学生的人数并输出。
(3) 求出这次考试的平均成绩,并统计各分数段的人数(优秀:≥90,良好:≥80,中等:≥70,及格:≥60,不及格:<60)。
(4) 将统计结果保存到数据文件statictic.txt中

import random
def creat_score():
    with open('score.txt','w')as f:
        for i in range(100):
            score=random.randint(0,100)
            f.write(str(score)+'\n')
creat_score()

在这里插入图片描述

with open('score.txt')as f:
    scores=[int(i[:-1]) for i in f.readlines()]
    score_max=max(scores)
    score_min=min(scores)
    score_avg=sum(scores)/len(scores)
    print('最高分:%d,最低分:%d,平均分:%.2f' %(score_max,score_min,score_avg))

在这里插入图片描述

with open('score.txt')as f:
    scores = [int(i[:-1]) for i in f.readlines()]
    count=0
    for i in scores:
        if i>90:
            count+=1
    print('90分以上的人数为:%d' %count)

在这里插入图片描述

with open('score.txt')as f1,\
    open('statictic.txt','w')as f2:
    scores = [int(i[:-1]) for i in f1.readlines()]
    d={
        '优秀':0,
        '良好':0,
        '中等':0,
        '及格':0,
        '不及格':0
    }
    for i in scores:
        if i>=90:
            d['优秀']+=1
        elif i>=80:
            d['良好']+=1
        elif i>=70:
            d['中等']+=1
        elif i>=60:
            d['及格']+=1
        else:
            d['不及格']+=1
    for item in d:
        f2.write(item+':'+str(d[item])+'\n')

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/mkgdjing/article/details/85162654