本系列文默认各位有一定的C或C++基础,因为我是学了点C++的皮毛之后入手的Python,这里也要感谢齐锋学长送来的支持。也要感谢大家的支持,前两篇访问、收藏、点赞、评论量都“居高临下”,感谢感谢,还有的朋友迫不及待等第三篇,真的很感动,虽然我写得慢,但是晚上少打两把游戏也是可以提高更新速度的啦。
今天我们要讲一下Python里面比较重要的一环,也就是Python能够异军突起的非常重要的一个原因。
大家有没有想过,在这个编程语言满天飞的时代,有老牌玩家C/C++,前端PHP,H5,新秀Java,数学界有MATLAB和R,为什么Python能够脱颖而出呢?
对,因为Python是个万金油般的存在!它可以去调用各种各样的包来为它工作,包里面有各种的函数,比方说我现在要用Python来处理一大堆的Excel表格,那我是不是要自己写表格处理函数呢?并不是的,自己写太麻烦,为什么不站在巨人的肩膀上呢?有个包叫‘csv’的,专门用来干这个事情,那我把它喊过来不就好了嘛。
对,就是模块调用,学完之后,就可以用Python去批量处理表格啊、去做简单的人脸识别啊、去做些小项目。
怎么样,是不是特别激动!!!
好,别急,慢慢来。这里呢,需要大家有一款称手的编译器了,可以是VS(支持py编程的),也可以是pycharm,或者其他的。
我用的是pycharm,VS开起来太大了。
下载pycharm之前,要先下载一个Python,现在是北京时间:2020-10-19,最新版是3.9.0。
这俩东西在各自官网上都有推荐最新版,安装也很方便,基本就是一路next,不过建议不要安装在C盘。
大家动起来!!!
然后,这篇以及下一篇将会带大家用Python操作文件,操作Excel。

函数和类讲完,自然也就是文件读写流了。
在学完数据库的一段时间里,我一度认为文件读写没啥用了,这年头谁还用文件呐,后来发现我错了。
我们先来看一张计算机编码表:
| 编码表 | 适用性 | 特点 |
|---|---|---|
| ASCII码 | 英文大小写字符,不支持中文 | 美国人的发明,占用空间小 |
| GB2312码、GBK码 | 支持了中文 | GBK码是GB2312的升级 |
| Unicode码 | 支持国际语言 | 占用空间大,适用性强。 |
| UTF- 8码 | 支持国际语言 | 转化,占用空间小。ASCII码被UTF- -8码包含 |
文件读写,是Python代码调用电脑文件的主要功能,能被用于读取和写入文本记录、音频片段、Excel文档、保存邮件以及任何保存在电脑上的东西。 http://dxb.myzx.cn
我用C++做过文件读写,再Linux上,在Windows上,也用QT写过有界面的文件读写,现在来试试Python的。
具体流程如下:
(以后就换图片风格啦,我用图片也是为了大家看的更直观嘛)
首先在创建一个测试文件,比如说放在桌面上的test.txt文件,里面随便写上点啥,打开你的编译器,新建一个project,开始编程。
file1这个变量是存放读取的文件数据的,以便对文件进行下一步的操作。
(可以看出来有三个参数吧)
参数释义:
第一个参数是文件的保存地址,一定要写清楚,否则计算机找不到
这里有两种方法,一种是写文件的绝对路径,一种是文件的相对路径。我上面那种写法就是绝对路径,如果要用相对路径的话嘛,也可以把文件拖动到你的项目文件下,然后:看图吧
对吧,这几种方式都是可以的,不过如果新手的话建议使用绝对路径,绝对路径用熟了再说。
怎么看绝对路径?右击文件->属性
第二个参数是权限位,主要有这么一些:
| r(read,读) | r只读,指针在开头,文件不存在则报错 | rb二进制只读,其余同左 | r+读写,其余同左 | rb+二进制读写,其余同左 |
|---|---|---|---|---|
| w(write,写) | w只写,文件不存在则新建,存在则覆盖 | wb二进制只写,其余同左 | w+读写,其余同左 | wb+二进制读写,其余同左 |
| a(append,追加) | a追加,文件存在指针放在末尾,文件不存在则新建 | ab二进制追加,其余同左 | a+追加且可读,其余同左 | ab+二进制追加且可读,其余同左 |
第三个参数encoding=‘utf-8’,表示的是返回的数据采用何种编码,一般采用utf-8或者gbk。
打开文件之后,就可以用read()函数进行读取的操作了,这个上边其实已经有体现了,read()函数啊。
但是,其实并没有这么简单,如果我想一行一行读呢?如果我想一个单词一个单词读呢?怎么办?
这里,我们需要使用一个新函数readlines(),顾名思义,一行一行读。
认真看啊:
信息量不大啊,看完我们来进行下一步切割。
这里虽然把每行都分开了,但是我们是要把每个数字都分开是吧,显然现在我们还不能满意。
那就用字符串切割函数吧:split()
http://zzdxb.baikezh.com/hebi/
split()是把字符串分割的,而还有一个join()函数,是把字符串合并的。
运行结果:
关闭文件,使用的是close()函数。
为啥要关闭文件呢?原因有两个:1.计算机能够打开的文件数量是有限制的,open()过多而不close()的话,就不能再打开文件了。2.能保证写入的内容已经在文件里被保存好了。
文件关闭之后就不能再对这个文件进行读写了。如果还需要读写这个文件的话,就要再次 open() 打开这个文件。
这里再顺便补充一个用法,为了避免打开文件后忘记关闭,占用资源或当不能确定关闭文件的恰当时机的时候,我们可以用到关键字with,之前的例子可以写成这样:
打开文件嘛,我就不多说啦,把‘r’改成‘w’,具体看上面那个表格。
你去写,写完之后你就会惊喜的发现,原文件内容被洗掉重写了。。
如果不想出现这种情况的话,可以将‘w’改成‘a’
那么 b 有什么用呢,那个二进制的。
因为有很多文件在计算机中的存储,它是采用二进制的,并不是肉眼能看得懂的文字信息。
比方说音频,比方说图片等等。这时候就需要使用 ‘b’ 权限的加持了。
学了这个文件读写处理啊,我们来玩点小游戏吧。
这里有一组数据:
然后把每列数据求和,写在文件下边:
放两张图隔开,再放上我的实现 http://dxb.myzx.cn/cure/


这里要注意一点就是你的文本文件不能有’空行’,这个空行往往肉眼看不见,,,,,
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30239065/viewspace-2728776/ ,如需转载,请注明出处,否则将追究法律责任。