2021-10-23

python100练习题(3)

#统计学生成绩高分低分平均分 输入文件:
#三列:学号、姓名、成绩
#列之间用逗号分割,比如"101,小张,88”行之间用\n换行分割
#输出:最高分、最低分、平均分

def compute_score():
    scores=[]
    with open(r"C:\Users\Administrator\Desktop\python练习题文本保存\成绩.txt") as fin:
        for line in fin:
            line=line[:-1]#去掉换行符
            fields=line.split(",")#必须进行分隔才能储存进列表
            scores.append(int(fields[-1]))#-1和2效果相同,一个倒着取,一个正向取,注意转换数据类型
    max_score=max(scores)#max函数求最大
    min_score=min(scores)#min函数求最小
    avg_score=round(sum(scores)/len(scores),2)
    return max_score,min_score,avg_score

'''max_score,min_score,avg_score=compute_score()
print(f"max_score={max_score},min_score={min_score},avg_score={avg_score}")'''

在这里插入图片描述

#统计文章中每个单词的出现次数

word_count={}

with open(r"C:\Users\Administrator\Desktop\python练习题文本保存\统计单词数量.txt") as fin1:
    for line in fin1:
        line=line[:-1]
        words=line.split()#按照空格分隔
        for word in words:
            if word not in word_count:
                word_count[word]=0#给所有的单词附上初始值0
            word_count[word]+=1

print(word_count)#如果想要对结果进行排序并且只看出现次数最多的10个单词,代码如下
print("\n降序显示前10名:\n")
print(sorted(word_count.items(),#items返回一个列表包换键名和键值
             key=lambda x: x[1],#选择出现次数作为排序依据,x[0]为键名,x[1]为键值
             reverse=1)[0:10])#python欺骗语法

在这里插入图片描述

#统计目录下所有文件的大小

import os
print(os.path.getsize(r"C:\Users\Administrator\Desktop\python练习题文本保存\统计单词数量.txt"))#os.path.getsize获取文件大小(字节),必须先引入os模块

sum_size=0
for file in os.listdir():
    #os.listdir()返回指定目录下所有文件名称,包含path路径
    if os.path.isfile(file):
        #os.path.isfile()用来判断文件是否是纯文件,是就输出文件名,否就不输出文件名
        
        sum_size+=os.path.getsize(file)
        print(file)

print("所有文件大小和:",sum_size/1000)

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值