网站首页 > 技术文章 正文
语法参考
open(file,mode='r',buffering=-1,encoding=None,erros=Node,newline=None,closefd=True,opener=Nobe)
file:必须参数,文件路径,表示需要打开文件的相对路径或者绝对路径,注意文件路径需要使用单引号或双引号括起来
mode:可选桉树,用于制定文件的打开模式,常见为只读模型r、只写模型w、追加模式a,默认的打开模式为只读r,实际调用时可以组合进行
mode的参数值及说明
r 只读模式(默认模式,文件的指针将会放在文件的开头,文件必须存在
rb 二进制格式打开文件,并且采用只读模型。文件的指针将会放在文件的开头,一般用于非文本文件,如图片、声音等,文件必须存在
r+ 打开文件后,可以读取文件内容,也可以写入新的内容覆盖原有内容,从文件开头进行覆盖,文件必须存在
rb+ 二进制格式打开文件,并且采取读写模式,文件的指针将会放在文件的开头,一般用于非文本文件,如图片、声音等,文件必须存在
w 只读模式,如果文件存在,则将其覆盖,否则创建新文件,必须保证文件所在目录存在,文件可以不存在,必须保证文件所在目录存在,文件可以不存在
wb 二进制格式打开文件,并且采取只写模式,一般用于非文本文件,如图片、声音等,必须保证文件所在目录存在,文件可以不存在,必须保证文件所在目录存在,文件可以不存在
w+ 打开文件后,先清空文件内容,使其变成一个空的文件,对这个文件有读写权限,必须保证文件所在目录存在,文件可以不存在
wb+ 二进制格式打开文件,并且采取读写模式,一般用于非文本文件,如图片、声音等,必须保证文件所在目录存在,文件可以不存在
a 追加模式打开文件,如果文件存在,文件指针将放在文件的末尾(即新内容会被写入到已有内容之后),否则将创建新文件写入
ab 二进制格式打开文件,并且采取追加模式,文件指针将放在文件的末尾(即新内容会被写入到已有内容之后),否则将创建新文件写入
a+ 以读写模式打开文件,如果文件存在,文件指针将放在文件的末尾(即新内容会被写入到已有内容之后),否则将创建新文件用于读写
ab+ 二进制格式打开文件,并且采取追加模式,如果文件存在,文件指针将放在文件的末尾(即新内容会被写入到已有内容之后),否则将创建新文件用于读写
buffering:可选参数,用于制定读写文件的缓冲模式,0表示不缓存,1表示缓冲,如果大于1,则表示缓冲区的大小
encoding:表示读写文件时所用的文件编码格式,一般使用UTF-8
erros:表示读写文件时碰到错误的报错级别,常见的级别有
strict 严重级别,默认级别,字符编码有错及抛出异常,参数值传入None即按此执行
ignore 忽略级别,字符编码有错时,忽略掉
replace 替换级别,字符编码有错时,替换为?
newline:表示用于区分换行符,只对文本模式有效,可以取值None、\n、\r、\r\n
closefd:表示传入的file参数类型(默认为True),传入文件路径时一定为True,传入文件句柄则为False
文件操作的常用方法
file.read(size)
读取文件按的全部或部分内容,size为读取文件内容的字符数
file.readline(size)
返回文件中一行的内容,size为指定读取一行内容的范围
file.readlies()
返回一个列表,列表中的每个元素为文件中的一行数据
file.write()
将内容写入文件
file.tell()
返回一个整数,表示文件指针的当前位置,即在二进制模式下距离文件头的字节数
file.seek(offset,whence)
将文件的指针移动到新的位置,位置通过字节数进行指定
offset 用于指定移动的字符个数,其具体位置与whence有关
whence 用于指定从什么位置开始计算,0为开头,1为当前,2为文末,默认为0
file.close()
关闭打开的文件
- 上一篇: C语言:open和fopen的区别简述
- 下一篇: Linux学习笔记-文件操作
猜你喜欢
- 2024-11-22 正点原子I.MX6U嵌入式Linux C应用编程:第二章《文件I/O基础》
- 2024-11-22 如何将Python函数输出内容同时打印到屏幕和文件
- 2024-11-22 3个重点,20个函数分析,浅析FFmpeg转码过程
- 2024-11-22 Linux驱动基础篇:hello驱动
- 2024-11-22 Python自带的库(open函数)读写txt、csv、json、XML、Excel文件
- 2024-11-22 UG NX OPEN二次开发实例:UF,C语言编程,创建圆柱体,API文档翻译
- 2024-11-22 openGauss SEQUENCE函数
- 2024-11-22 Python文件操作的步骤
- 2024-11-22 Python读取与写入Excel模块:openpyxl
- 2024-11-22 PHP imap_open函数任意命令执行漏洞
- 08-06中等生如何学好初二数学函数篇
- 08-06C#构造函数
- 08-06初中数学:一次函数学习要点和方法
- 08-06仓颉编程语言基础-数据类型—结构类型
- 08-06C++实现委托机制
- 08-06初中VS高中三角函数:从"固定镜头"到"360°全景",数学视野升级
- 08-06一文讲透PLC中Static和Temp变量的区别
- 08-06类三剑客:一招修改所有对象!类方法与静态方法的核心区别!
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- windowsscripthost (69)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (70)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)