基本概念
文件:Python中文件是对象;
Linux文件:一切设备都可以看成文件,例如:磁盘文件,管道,网络Socket,外设等
文件属性:用户,读,写,执行权限;
Linux中,使用chmod +x hello.py
命令更改权限。
文件打开方式
文件打开方法:open(name[,mode[buf]]
name: 文件路径
mode: 打开方式
buf: 缓冲buffering大小
Python读取方式
文件读取方式:
read([size])
: 读取文件(读取size个字节,默认读取全部)
readline([size])
: 读取一行
readlines([size])
: 读取完文件,返回每一行所组成的列表
Python写入方式
文件写入方式:
write(str)
: 将字符串写入文件
writelines(sequence_of_strings)
: 写多行到文件,参数为可迭代的对象
文件打开方式
文件关闭
Python文件为什么会关闭?
1: 将写缓存同步到磁盘;
2: Linux系统中每个进程打开文件的个数是有限的;
3: 如果打开文件数到了系统限制,在打开文件就会失败;
Python文件指针
Python文件指针操作:
seek(offset[, whence])
: 移动文件指针
offset: 偏移量,可以为负数;
whence: 偏移相对位置
Python文件指针定位方式:
os.SEEK_SET: 相对文件起始位置;
os.SEEK_CUR: 相对文件当前位置;
os.SEEK_END: 相对文件结尾位置;
文件属性编码格式
文件对象属性
file.fileno(): 文件描述符
file.mode: 文件打开权限
file.encoding: 文件编码格式
file.closed: 文件是否关闭
标准文件
文件标准输入:sys.stdin
文件标准输出:sys.stdout
文件标准错误:sys.stderr
需要导入sys模块,代码:import sys
文件命令行参数
sys模块提供sys.argv属性,通过该属性可以得到命令行参数;
sys.argv:字符串组成的列表;
OS模块对文件和目录的操作
os.open(filename, flag [, mode])
: 打开文件
flag: 打开文件方式
- os.O_CREAT: 创建文件
- os.O_RDONLY: 只读方式打开
- os.O_WRONLY: 只写方式打开
- os.O_RDWR: 读写方式打开
os.read(fd, buffersize)
: 读取文件
os.write(fd, string)
: 写入文件
os.lseek(fd, pos, how)
: 文件指针操作
os.close(fd)
: 关闭文件