文件的操作

open参数介绍

操作文件的目的:就是把数据存放起来,可以让程序下一次执行的时候直接使用,而不必重新制作一份,省时省力

IO流:

  1. 读(获取): output - 输出
  2. 写(写入): input -输入
open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True):
file: 文件路径、文件名  *
mode: 操作文件的方式  *
buffering : 缓存区,存储临时数据
encoding : 编码格式 *
errors : 错误
newline  : 换行
closefd: 关闭

w模式

"w"模式 写入:指针在文件的最前面
write() : 写入信息,每次写入,都是重新写入,只能传str
writelines() : 可以传str和列表,但列表的元素必须是str类型

r模式

r 模式    read 读取
read(): 读全部
        参数: 读多少个字节/字符
readline(): 一次读一行
        参数: 没编码格式,读字节,设置了编码格式,读字符
readlines(): 一行为一个元素,将所有内容以列表形式返回
        参数: 长度不够就显示当前的元素,长度够了,读取下一个原色

x 和 a 模式

x  xor 异或模式
    文件不存在,则创建写入,存在则报错。
    指针在最前面

a  append 追加模式
    文件不存在,则创建写入。如果存在,就在原内容后面添加。
    指针在最后面。
    与w的区别:  w 每次写都会清空原内容。a 会保留原内容

b、t、+

b binary 二进制模式
t  text  文本模式 (默认)
+  更新读写


组件套装:
w r a x   单独使用
wb rb ab xb   操作二进制文件
w+ a+ r+  x+   可读可写的操作普通文件
wb+ rb+ ab+ xb+  可读可写的操作二进制文件

with读写

with : 用来启动对象的上下文管理器,会自动调用管理器的退出方法

as: 起别名

seek: 移动光标
    参数1: 预留几个字节的位置
                utf-8 : 一个中文(字符)3个字节
                utf-6、jbk : 一个中文两个字节

    参数2:光标的位置,默认为0
            0:从开头开始算起
            1:从当前位置算起
            2:从的末尾算起

文件的os模块

有些时候,需要对文件进行重命名、删除等一些操作。python中的os模块中就有这些功能

os模块需要导入

  1. rename() 文件重命名
  2. remove() 删除文件
  3. mkdir() 创建文件夹
  4. getcwd() 获取当前目录 - 需要接收 - 绝对路径
  5. chdir() 改变默认目录 - 只改变输出的路径,不改变文件位置(更改的不是当前文件的目录 而是通过当前文件创建的其他文件的目录)
  6. listdir() 获取目录列表 - ./ 获取当前目录 …/ 获取上一级目录 目录名 获取当前目录下的某个目录
  7. rmdir() 删除文件夹