目录
一、文件
1.1 打开文件
使用open打开文件
open('d:/Python环境/test.txt','r')
open函数内传两个参数,第一个表示打开哪个文件,第二个表示打开方式
“ r ”表示读文件。‘w’ 表示写文件。
open的返回值,是一个文件对象。后续的读写操作,都是拿这个文件对象来进行操作。
1.2 关闭文件
f.close()
以上就是文件的关闭操作。文件在打开之后,一定得关闭。
1.3 写文件
使用write实现写文件的操作
如果使用w方式打开,会清空原有的内容。
如果使用a方式(append)打开,不会清空原有内容。
如果使用已经关闭的文件,系统则会报异常。
1.4 读文件
使用 read 函数进行读取文件的操作,指定读取几个字符。
在读取中文时候,会发生报错情况:
其原因是:中文和英文类似,在计算机中,都是使用“数字”来表示字符的。
哪个数字对应哪个汉字,在计算机中,可以有多个版本。
主流的有 GBK 和 UTF8 ,实际开发的实际时候需要保证,文件内容编码的方式和代码中操作文件的编码方式匹配。
此处代码尝试按照gbk的方式来解析。而文件则是utf8的方式编码。
此处,我们使用的办法就是让代码按照utf8的方式进行处理。
相比于gbk,utf8是使用更广泛的编码。
在代码后面,增加enconding=‘utf8’即可
更常见的需求,是按照行来读取
最简单的方法就是直接用for循环
这里多了一个空行,原因是本来读到的文件内容末尾就有\n,此处使用print来打印,又会自动增加一个换行符。可以给print再多设定个参数,修改print自动添加换行的行为。
end 参数就是表示每次打印之后在末尾加个东西,默认是 \n ,修改成" " 表示啥都不加
还可以使用 readlines 方法直接把整个文件所有内容都读出来,按照行组织到一个列表里。
二、上下文管理器
在有些情况下,会忘记f.close 为了避免这种情况,就使用上下文管理器防止这种情况的发生。
使用with as 的方式打开文件
当with内部的代码块执行完毕以后,就会自动调用关闭方法。