python基础入门之文件操作
1|0python基础入门之文件操作
目录
1|1一、文件操作
1、文件的概念
文件就是把数据存起来,让程序下次执行时直接使用,省时省力。
2、代码打开文件的两种方式
1|2二、文件读写模式
1、只读模式('r')
以只读方式打开文件。文件的指针将会放在文件的开头,这是默认模式。
2、只写模式('w')
打开一个文件只用于写入。如果该文件已存在则将其覆盖,如果该文件不存在,创建新文件。
3、只追加模式('a')
打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
1|3三、文件操作模式
1、('t')文本模式
默认模式,上面所写的r w a全称是rt wt at
- 只能操作文本文件
- 读写以字符为单位
- 需指定encoding参数,否则会采用计算机默认编码
2、('b')二进制模式(bytes模式)
- 需指定 rb wb ab,可以操作任意类型文件
- 读写以字节bytes为单位
- 本身为二进制不需编码
1|4四、文件诸多方法
1、read( )
- 一次性读取文件全部内容,光标停在文件末尾
- 文件内容比较多时,可能会造成内存溢出
- 括号内可填写数字,文本模式下,代表读取几个字符
2、for循环
一行行读取文件内容,能避免内存溢出
3、readline( )
一次只读一行内容
4、readlines( )
一次性读取文件内容,按照行数组织成列表的一个个数据值
5、readable( )
判断文件是否具备读数据的能力
6、write( )
写入数据
7、writeable( )
判断文件是否具备写数据的能力
8、writelines( )
接收一个列表 ,一次性将列表中所有的数据值写入
9、flush( )
将内存中文件数据立刻刷到硬盘 等价于ctrl + s
1|5五、文件内光标的移动
- 文本模式下read括号内的数字表示读取几个字符
- 二进制模式下read括号内的数字表示读取几个字节(英文一个字节 中文三个字节)
1|6六、文件内数据修改
1、覆盖
只占用硬盘一块空间,但数据量大会造成内存溢出。
2、重命名
不会造成内存溢出,但有那么一段时间需要占用硬盘两个地方的空间(可能) ,也可能是在内存中创建了没有刷到硬盘
1|7七、计算机硬盘修改数据的原理
不是直接删除而是改变状态,等待后续数据的覆盖才会被真正删除。
__EOF__

本文作者:知了了了了
本文链接:https://www.cnblogs.com/zhiliaowang/p/16772787.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/zhiliaowang/p/16772787.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理