1、简单文件操作流程:打开文件 -> 操作:写入/读取等 -> 关闭文件
2、打开文件:open(fname, mode, encoding, buf) # 文件路径/文件,打开方式, 打开文件编码格式,缓冲 buffering 大小(可选参数)
'r' | 只读 |
'w' | 只写,每次写入都会把之前的内容覆盖 |
'a' | 追加,在之前的内容后面追加 |
'r+' / 'w+' | 读写 |
'a+' | 追加和读写 |
3、读取文件:read(size) # 可选参数 size:限定读取文件大小,默认8192字节缓存大小
读取一行:readline(size)
读取多行:readlines(size) # 读取多行,以字符串列表形式返回
4、遍历文件:iter( f ) # 将文件转换成迭代器,在不消耗大量内存的情况下完成对文件的遍历
5、写入文件:write(str) # 将字符串写入文件,在关闭文件之前内容写在写缓存区,关闭后同步到磁盘同时清空缓存区,或者当缓存区满时会自动同步到磁盘,flush() 操作可以主动将写缓存同步到磁盘
写入多行:write(List_str) # List_str 为字符串列表
6、关闭文件:close() # 查看文件是否关闭:file.closed
7、文件指针操作:
移动文件指针 seek(offset, whence) # offset 偏移量,可以是负数,whence 偏移相对位置
查看当前文件指针位置:tell()
8、文件指针定位方式(whence):import os #需要先导入 os 模块
os.SEEK_SET | 相对文件起始位置 | seek(0, os.SEEK_SET) | 移动指针到起始位置 |
os.SEEK_CUR | 相对文件当前位置 | seek(-5, os.SEEK_CUR) | 相对当前指针位置向前进5个字符 |
os.SEEK_END | 相对文件结尾位置 | seek(0, os.SEEK_END) | 移动指针到末尾位置 |
import os
f = open('test.txt', 'w+', encoding='utf-8')
f.write('我在宿舍学Python!')
f.flush() # 写入内容同步到磁盘
f.seek(0, os.SEEK_SET) # 移动文件指针到开头位置
print (f.read())
f.close()
10、查看文件内容命令:cat test.txt # 将文件内容打印
11、查看文件属性命令:ls -l test.txt # 将文件属性打印
12、权限:-rw-rw-r-- # 第一个字符 '-' 表示文件,'d' 表示目录,'r' 读权限,'w' 写权限,'x' 执行权限
13、修改权限命令:chmod +/- * test.txt # 添加或移除 * 权限,' * ' 可以是 'r','w','x'