python文件练习题

【问题描述】

从一个文本文件内读入任意多个学生的分数,求出最高分,最低分和平均分存入文件result.txt内。

【输入形式】

一个文件,文件中分数之间由换行隔开,输入的文件名为grade.txt。输入的分数都是整数。

【输出形式】

计算出grade.txt中所有分数的最高分,最低分和平均分并分3行存入result.txt的文件内。平均分保留1位小数。

【样例输入】

60

70

80

【样例输出】

80

60

70.0

【样例说明】

输出的70是平均分。

【评分标准】

with open("grade.txt", 'r') as f:
    ls = []
    for s in f:
        s = s.strip("\n")
        ls.append(int(s))
    o = open("result.txt", "w")
    o.writelines (str(max(ls)))
    o.write('\r\n')
    o.writelines(str(min(ls)))
    o.write('\r\n')
    o.writelines (str(round(sum(ls)/len(ls),1)))
    o.close()
    

【问题描述】

编写程序实现:从键盘输入整数n。从文件"text.txt"中读入n行,将其中以字母A开头的行打印到标准输出(这里指的是屏幕)中。
【输入形式】

从键盘输入整数n;
文件输入的第1至n行的每一行构成一个字符串。

【输出形式】

标准输出的每一行是字母A开头的行。若未找到符合条件的字符串,则输出"not found";若输入数据不合法(指n为小数或负数)则输出"illegal input"。

【样例输入】

  键盘输入:      5

  文件输入:
        hello world
        An apple
        hello C++
        A man
        a program

【样例输出】

        An apple
        A man
n=eval(input())
if n<=0:
    print("illegal input")
elif not (n*10)%10 == 0:
    print("illegal input")
else:
    flag=False
    f=open("text.txt", 'r') 
    for i in range(int(n)):
        p=f.readline()
        pre=p[0]
        if pre=='A':
            print(p)
            flag=True
    if flag==False:
        print("not found")

【问题描述】

从in.txt文件读数据,对于该文件每一行:

求该行中各个数(可能是整数,也可能是浮点数)的最大、最小值,

把最大值和最小值写入文件out.txt,写成一行,最大值在前,两个数之间隔两个空格。

30 30 0 30 20 10 395 92

35 35 0 50 20 20 430 100

35 35 0 50 20 20 430 100

35 35 1.2 50 20 20 365 85

32.5 32.5 0 47.5 20 0 381.33333 89

【样例输出】

395 0

430 0

430 0

365 1.2

381.33333 0

【样例说明】

值输出的内容要与该值输入时的内容完全一致。例如,输入内容是381.33333,输出内容也要是381.33333,不能输出为381.33.

f=open("in.txt", 'r')
o=open("out.txt", "w")
for i in f:
    ls=list(i.split(" ")[:-1])
    ls=list(map(eval,ls))
    m=max(ls)
    o.write(str(str(max(ls))+" "+str(min(ls))))
    o.write('\r\n')

你可能感兴趣的:(python,python,开发语言)