当前位置: 首页 > news >正文

Python-文件操作

Python文件操作

1. 打开文件

使用open()函数打开文件,指定文件名和模式,常用模式有:

  • 'r' - 读取(默认)
  • 'w' - 写入(会先截断文件)
  • 'a' - 追加
  • 'b' - 二进制模式
  • 't' - 文本模式(默认)
  • '+' - updating (reading and writing)
f = open('data.txt','r') # 打开data.txt文件用于读取

2. 读取文件

  • f.read() - 读取整个文件内容,返回字符串
  • f.readline() - 读取下一行,返回字符串
  • f.readlines() - 读取所有行,返回列表
content = f.read() # 读取全部内容
line = f.readline() # 读取一行
lines = f.readlines() # 读取所有行到列表

3. 写入文件

使用f.write(str)将字符串写入文件

f = open('data.txt','w') 
f.write('Hello World') # 写入内容

4. 关闭文件

f.close()关闭文件

f.close()

5. with语句

使用with语句可以自动关闭文件

with open('data.txt','r') as f:content = f.read()
# 文件会在with代码块结束后自动关闭

6. 文件指针

  • f.tell() - 返回当前文件位置指针位置
  • f.seek(offset) - 将位置指针移动到指定位置
pos = f.tell() # 获取当前位置
f.seek(10) # 设置位置到第10个字节

'+' 模式打开一个文件用于同时读取和写入。

使用 '+' 模式打开文件时,可以对文件进行读和写操作。

例如:

f = open('data.txt','+r') 

这会以读写模式打开data.txt文件。

然后可以进行:

  • 读取文件内容:

    content = f.read()
    
  • 写入文件内容:

    f.write('新内容') 
    
  • 追加内容到文件末尾:

    f.seek(0, 2) # 移动到文件末尾
    f.write('新内容')
    

所以'+'模式相当于同时具有'r''w'两种模式的功能,可以对文件进行读写操作。

但需要注意,打开文件时使用'w'模式会先截断文件,而'+'模式不会截断文件,对原有内容的修改要小心操作

以上概括了Python文件操作的主要方法,包括打开文件,读取写入,指针操作,with语句等,每个方法都附带了示例代码供参考
掌握这些方法可以完成Python中大多数文件处理任务

http://www.lryc.cn/news/103617.html

相关文章:

  • windows中注册redis服务启动时报1067错误
  • 大数据面试题:HBase的RegionServer宕机以后怎么恢复的?
  • ansible的脚本——playbook剧本
  • 【系统监控程序】
  • 计算机论文中名词翻译和解释笔记
  • 读书笔记-《ON JAVA 中文版》-摘要20[第十九章 类型信息-1]
  • 3、Linux驱动开发:模块_传递参数
  • 基于 ThinkPHP 5.1(稳定版本) 开发wms 进销存系统源码
  • 全面解析 SOCKS5 代理和 HTTP 代理在网络安全与爬虫应用中的技术对比与应用指南
  • DevOps系列文章 之 docker 制作kafka镜像
  • iPhone 安装 iOS 17公测版(Public Beta)
  • Spingboot yaml 配置文件及数据读取
  • vue中使用axios发送请求时,后端同一个session获取不到值
  • html请求谷歌音频跨域问题(谷歌翻译接口)虚拟机ping不通google(下载谷歌音频、下载百度翻译音频)
  • 【设计模式|结构型】享元模式(Flyweight Pattern)
  • 最小覆盖子串(JS)
  • <C语言> 预处理和宏
  • 代驾公司如何进行运营分析
  • 初学HTML:采用CSS绘制一幅夏天的图
  • 经典文献阅读之--NoPe-NeRF(优化无位姿先验的神经辐射场)
  • 在docker中没有vi如何修改docker中的文件
  • 【Docker】Docker应用部署之Docekr容器安装Nginx
  • flutter开发实战-jsontodart及 生成Dart Model类
  • C++复刻:[流光按钮]+[悬浮波纹按钮]
  • CompletableFuture 详解
  • el-table数据处理
  • IPv4网络用户访问IPv6网络服务器
  • 程序员是怎么记住代码的?
  • 华为云NFS使用API删除大文件目录
  • 国家金融监督管理总局明确将数据安全管理纳入操作风险管理范畴