ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

同济大学Python程序设计基础 实验七:文件

2021-01-08 23:59:07  阅读:250  来源: 互联网

标签:f1 文件 Python 同济大学 score print 程序设计 txt open


同济大学Python程序设计基础

实验七

第一题

打开一个文本文件T1.txt。读出文件的内容,然后进行如下处理:
①统计并且输出文件的行数;
②将文件的大小写字母互相转换后写入文件T2.txt,即大写的转成小写的,小写的转换成大写的,其余不变

代码片.

 f1=open('T1.txt','r')
f2=open('T2.txt','w')
lines=f1.readlines()
hang=len(lines)
print(lines)
print(hang)
new=[]
for line  in lines:
    newline=""
    for ch in line:
        if 'A'<=ch<'Z':
            ch=chr(ord(ch)+ord('a')-ord('A'))
        elif 'a'<=ch<'z':
            ch=chr(ord(ch)+ord('A')-ord('a'))
        newline=newline+ch
    new.append(newline)
print(new)
f2.writelines(new)
f1.close()
f2.close()

第二题

打开如下图2.7.1所示的学生成绩文件.txt,统计平均分、最低分、平均分、最高分。

在这里插入图片描述

代码片.

f1=open('学生成绩文件.txt','r')
stu=f1.readlines()
score=[]
for s in stu:
    m=s.split(" ")
    score.append(int(m[2]))
print(score)
ma=max(score)
mi=min(score)
s=sum(score)
avg=s/len(score)
print (ma)
print (mi)
print (s)
print (avg)

第三题

从互联网上下载《红楼梦》的某一回组成文本文件hlm.txt,然后设计一程序统计林黛玉和贾宝玉两个人名在文件中出现的次数。

代码片.

import jieba
f1=open('T1.txt','r')
s=f1.readlines();
print(s)
st=jieba.lcut(s[0])
print(st)
lin=0
jia=0
for word in st:
    if word=='林黛玉' :
        lin=lin+1
    elif word=='贾宝玉':
        jia=jia+1
print(lin)
print(jia)

第四题

编写一个职工奖金处理程序。要求如下:
①输入不超过10个职工的工号、姓名和奖金,保存在文件JJ.txt。文件中的数据格式:
90813,张大海,1080.50元
②从JJ.txt中读出数据,然后按奖金从低到高排序,保存在文件NewJJ.txt

代码片.

f1=open('JJ.txt','w')
s=input("请输入职工的工号、姓名和奖金(格式:工号,姓名,奖金):")
cnt=1
while s!="" and cnt<10:
    cnt+=1
    f1.write(s+'\n')
    s=input()
f1.close()

f1=open('JJ.txt','r')
f2=open('NewJJ.txt','w')
data=f1.readlines()
workers=[]
for worker in data:
    w=worker.split(',')
    workers.append(w)
    
for i in range(len(workers)):
    workers[i][2]=int(workers[i][2])

w=sorted(workers,key=lambda x:x[2],reverse=False)
for line in w:
    s=""
    for word in line:
        s=s+","+str(word)
    s=s[1:]
    f2.writelines(s+"\n")
        
f1.close()
f2.close()

第五题

编写一个将两个文本文件的内容合并的程序。

代码片.

f1=open('1.txt','r')
f2=open('2.txt','r')
f3=open('3.txt','w')

s1=f1.readlines()
s2=f2.readlines()
s=s1[0]+s2[0]
f3.write(s)
f1.close()
f2.close()
f3.close()
        

标签:f1,文件,Python,同济大学,score,print,程序设计,txt,open
来源: https://blog.csdn.net/cjzui6666/article/details/112384455

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有