Python中的文件操作
Python中文件的打开方法 :
open(name[,mode[buf]])
:打开文件
name
:表示文件的路径
mode
:表示文件的打开方式
buf
:表示缓冲区的大小
mode说明
r
:只读方式打开,文件必须存在
w
: 只写方式打开,文件不存在则会创建文件,文件存在则会清空文件
a
: 追加方式打开,文件不存在的时候会创建文件
r+
或者w+
: 读写方式打开
a+
追加和读写方式打开
rb
、wb
、ab
、rb+
、wb+
ab+
:表示以二进制的方式打开
Python中文件的关闭
在python中,文件打开后,必须要对文件进行关闭,在操作系统中,会有打开文件个数的限制,如果打开的文件个数超过了系统限制的文件个数,这个时候在打开文件就会出现报错,所以我们在打开文件后一定要及时的进行的关闭操作,在Python中,打开的文件File对象会有一个fileno的字段来记录当前打开的文件个数,通过编写测试代码,发现我自己的Mac上的文件限制个数为255个,当文件打开的个数超过255个后,再次打开文件会报错。
Python文件指针的操作
seek(offset[,whence])
: 移动文件指针
offset
:偏移量,可以为负数whence
:偏移相对位置
whence说明:
os.SEEK_SET
: 相对文件的开始位置
os.SEEK_CUR
: 相对文件的当前位置
os.SEEK_END
:相对文件的结尾位置
可以通过tell()
来获取文件的指针位置
Python 的文件属性
file.fileno()
: 返回linux对应的文件描述符
file.mode
:文件打开权限
file.encoding
:文件的编码格式
file.closed
:文件是否关闭
Python的标准文件
sys.stdin
:文件标准输入
sys.stdout
:文件的标准输出
sys.stderr
:文件标准错误
Python的命令行参数
在Python中,sys模块提供sys.argv
属性,通过该属性,可以得到python中的命令行参数,可以通过获取的参数进行自定义操作
Python使用os模块来打开文件
open(filename,flag,[,mode])
:os模块打开文件
flag打开方式:
os.O_CREATE
:创建文件
os.O_RDONLY
:只读方式打开
os.O_WRONLY
:只写方式打开
os.O_RDWR
:读写方式打开
文件操作:
os.read(fd,buffersize)
:读取文件 fd:指文件描述符 buffersize:读取文件大小
os.write(fd,string)
:写入文件
os.lseek(fd,pos,how)
:文件指针操作,跟上面介绍的文件指针操作类似
os.close(fd)
:关闭文件
os模块中的常用方法梳理
os.access(path,mode)
:判断该文件的权限:F_OK存在 权限 : R_OK,W_OK,X_OK
os.listdir(path)
:返回当前目录下所有文件组成列表
os.remoce(path)
:删除文件
os.rename(old,new)
:文件重命名
os.mkdir(path,[,mode])
:创建目录
os.makedirs(path,[mode])
:创建多级目录
os.removedirs(path)
:删除多级目录
os.rmdir(path)
:删除目录(目录必须是空目录)
os.path模块方法梳理
os.path.exists(path)
:当前路径是否存在
os.path.isdir(path)
:是否是一个目录
os.path.isfile(path)
:是否是一个文件
os.path.getsize(filename)
:获取文件的大小
os.path.dirname(path)
:返回路径的目录
os.path.basename(path)
:返回路径的文件名