您现在的位置是:课程教程文章
python写文件及数据处理的简单操作
2023-12-18 17:05课程教程文章 人已围观
-
软件测试之Windows操作系统基础教程
软件测试之Windows操作系统基础教程学习资料和课程咨询请与老师QQ沟通1586281525 本阶段讲解Windows操作系统的基础知... -
solidworks工程图设计(操作+技巧+实战)
solidworks工程图设计(操作+技巧+实战)凡报名本课程的学员均免费赠送有录课老师提供的终身免费答疑服务;答疑群每... -
佳能700D相机教程摄影理论相机操作技巧好
佳能700D相机教程摄影理论相机操作技巧好【账号、佳片、电子书】获赠方法:好评后,添加客服微信13011886577,展示支付... -
扩展Zabbix数据收集功能的3个简单步骤
扩展Zabbix数据收集功能的3个简单步骤课程目录 扩展Zabbix功能的多种方法: 1.system.run[] 监控项(agent check) 2.User paramete...
光看字面意思,大家脑海里应该浮现整个流程了吧,跟老师上课意义一样,先看,在学,再理解,因此,本章内容也套用这个流程,一起来看下吧~
python默认是以只读模式打开文件。如果想要写入内容,在打开文件的时候需要指定打开模式为写入:
f = open('output.txt', 'w')
'w'就是writing,以这种模式打开文件,原来文件中的内容会被你新写入的内容覆盖掉,如果文件不存在,会自动创建文件。
不加参数时,open为你默认为'r',reading,只读模式,文件必须存在,否则引发异常。
另外还有一种模式是'a',appending。它也是一种写入模式,但你写入的内容不会覆盖之前的内容,而是添加到文件中。
输出文件:
示例演示——利用python操作数据处理
看一下我们的文档里的数据:
刘备 23 35 44 47 51 关羽 60 77 68 张飞 97 99 89 91 诸葛亮 100
1.先把文件读进来:
f = file('scores.txt')
2.取得文件中的数据。因为每一行都是一条学生成绩的记录,所以用readlines,把每一行分开,便于之后的数据处理:
lines = f.readlines() f.close()
提示:在程序中,经常使用print来查看数据的中间状态,可以便于你理解程序的运行。比如这里你可以print lines,看一下内容被存成了什么格式。
3.对每一条数据进行处理。按照空格,把姓名、每次的成绩分割开:
for line in lines: data = line.split()
接下来的4、5两个步骤都是针对一条数据的处理,所以都是在for循环的内部。
4.整个程序最核心的部分到了。如何把一个学生的几次成绩合并,并保存起来呢?我的做法是:对于每一条数据,都新建一个字符串,把学生的名字和算好的总成绩保存进去。最后再把这些字符串一起保存到文件中:
sum = 0 for score in data[1:]: sum += int(score) result = '%s\t: %d\n' % (data[0], sum)
这里几个要注意的点:
对于每一行分割的数据,data[0]是姓名,data[1:]是所有成绩组成的列表。 每次循环中,sum都要先清零。 score是一个字符串,为了做计算,需要转成整数值int。 result中,我加了一个制表符\t和换行符\n,让输出的结果更好看些。
5.得到一个学生的总成绩后,把它添加到一个list中。
results.append(result) results需要在循环之前初始化results = []
6.最后,全部成绩处理完毕后,把results中的内容保存至文件。因为results是一个字符串组成的list,这里我们直接用writelines方法:
output = file('result.txt', 'w') output.writelines(results) outpus.close()
输出结果:
以上就是关于python读写文件的全部内容了,一起来试试吧~如需更多python实用知识,点击进入PyThon学习网教学中心。
课程教程:python写文件及数据处理的简单操作下一篇:没有了