【Python】基础--文件处理

news2024/10/21 17:02:44

在Python中,文件处理涉及打开文件、读取文件内容、写入文件以及关闭文件等操作。以下是有关文件处理的基本知识:

1. 文件的打开

在Python中,可以使用内置的 open() 函数打开文件。open() 函数的基本语法如下:

file_object = open(file_name, mode)
  • file_name: 要打开的文件的路径和名称。
  • mode: 文件打开模式(可选),常用模式包括:
    • 'r': 只读模式(默认)
    • 'w': 写入模式(如果文件存在,则覆盖;如果不存在,则创建新文件)
    • 'a': 追加模式(在文件末尾添加内容)
    • 'b': 二进制模式(例如,'rb''wb'
    • 'x': 排他性写入模式(仅在文件不存在时创建新文件)
# 以只读模式打开文件  
file = open("example.txt", "r")

2. 文件的读取

读取文件内容通常使用 read(), readline()readlines() 方法。

  • read(size): 读取指定数量的字节,如果没有指定,读取整个文件。
content = file.read()  # 读取整个文件内容

readline(): 逐行读取文件,每次读取一行。

first_line = file.readline()  # 读取第一行

readlines(): 读取文件中所有行并返回一个列表,每一行作为列表的一项。

lines = file.readlines()  # 返回所有行的列表

使用示例

file = open("example.txt", "r")  
content = file.read()  # 读取文件内容  
print(content)  
file.close()  # 关闭文件

3. 文件的写入

文件写入通常使用 write()writelines() 方法。

  • write(string): 将字符串写入文件。
file.write("Hello, World!")
  • writelines(lines): 将一个字符串列表写入文件,每个字符串被写入后不自动换行。
lines = ["Line 1\n", "Line 2\n", "Line 3\n"]  
file.writelines(lines)

使用示例

file = open("example.txt", "w")  # 以写入模式打开文件(覆盖)  
file.write("Hello, World!\n")  
file.write("This is a new line.\n")  
file.close()  # 关闭文件

4. 文件的关闭

无论是读取还是写入操作后,应该使用 close() 方法关闭文件,以释放系统资源:

file.close()

5. 使用 with 语句

为了确保文件正确关闭,可以使用 with 语句来处理文件,这样无论操作是否成功,文件都会被自动关闭。

示例

with open("example.txt", "w") as file:  
    file.write("Hello, World!\n")  
    file.write("Using with statement for safer file handling.\n")  

with open("example.txt", "r") as file:  
    content = file.read()  
    print(content)

6. 处理文件异常

在文件处理时,可能会出现各种异常,例如文件未找到、权限不足等。可以使用 try-except 语句来捕获和处理这些异常。

示例

try:  
    with open("example.txt", "r") as file:  
        content = file.read()  
        print(content)  
except FileNotFoundError:  
    print("File not found.")  
except PermissionError:  
    print("Permission denied.")

通过掌握以上知识,你可以有效地进行文件的读写和管理。在实际应用中,这些基本操作非常重要,尤其是在处理大量数据或配置文件时。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2220169.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Electron入门笔记

Electron入门笔记 ElectronElectron 是什么Electron流程模型创建第一个Electron项目配置自动重启主进程和渲染进程通信打包应用 Electron Electron 是什么 跨平台的桌面应用开发框架使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromium和 Node.js Electro…

【Python网络编程】学习Socket编程,打造网络应用!

【Python网络编程】学习Socket编程,打造网络应用! 网络编程是现代计算机科学中的重要一环,几乎所有的应用都依赖网络传输数据。无论是创建简单的客户端-服务器模型,还是构建复杂的网络应用,Socket 编程都是关键的技术…

【远程监控新体验】OpenObserve结合内网穿透无公网IP远程访问全攻略

文章目录 前言1. 安装Docker2. Docker镜像源添加方法3. 创建并启动OpenObserve容器4. 本地访问测试5. 公网访问本地部署的OpenObserve5.1 内网穿透工具安装5.2 创建公网地址6. 配置固定公网地址前言 本文主要介绍如何在Linux系统使用Docker快速本地化部署OpenObserve云原生可观…

java导出带图形的word

先看效果图:方法都是一样的,所以数据只做了前两组 第一步需要准备模版: 新建一个word插入图表,选择想要的图表。 编辑图表:营业额表示数字,季度表示文字。其他的样式编辑可根据自己的需求更改,…

怎么给word文字注音?准确率高达80%,操作简单

怎么给word文字注音?在数字化办公日益普及的今天,Microsoft Word作为最常用的文字处理软件之一,承载着无数人的文档编辑需求。然而,在这个看似功能强大的工具中,有一个实用却常被忽视的功能——为文字注音。这对于教育…

电感的学习

电感是表示电路中电流变化对电压影响的物理量,常用符号 LLL 表示。电感的基本公式可以从其定义和基本特性中得出,主要包括以下几个方面: 1. 电感的定义 2. 电感能量存储 3. 自感与互感 自感:电感器自身的电感,表示电…

2024 OSCAR|《开源体系建设路径模式洞察与建议》即将发布

近年来,开源体系建设受到高度重视,国家软件发展战略和“十四五”规划纲要均对开源作出重要部署,为我国开源体系建设和发展指明了方向。9月25日,工业和信息化部党组书记、部长金壮指出要加强开源体系建设,助推产业高质量…

03 springboot-国际化

Spring Boot 提供了很好的国际化支持,可以轻松地实现中英文国际化。 项目创建,及其springboot系列相关知识点详见:springboot系列 springboot系列,最近持续更新中,如需要请关注 如果你觉得我分享的内容或者我的努力对…

构建高效房屋租赁平台:SpringBoot应用案例

第1章 绪论 1.1 课题背景 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。所以各行业,尤其是规模较大的企业和学校等…

爱维艾夫净利润下滑权益回报率骤降,退款数量增加市占率仅1%

《港湾商业观察》施子夫 9月13日,爱维艾夫医院管理集团有限公司(以下简称,爱维艾夫)第二次递表港交所,保荐机构为中信证券。 爱维艾夫的第一次递表发生在2023年12月,后因递表资料失效而告终。一年不到的时…

基于SSM机场网上订票系统的设计

管理员账户功能包括:系统首页,个人中心,用户管理,机票信息管理,订单信息管理,机场广告管理,系统管理 前台账号功能包括:系统首页,个人中心,机票信息&#xf…

餐饮行业有什么好的供应链管理系统

在餐饮企业的供应链管理中,合适的供应链管理系统是至关重要的,它能够帮助企业提高食材采购效率、降低成本、确保食材供应的及时性和质量。然而,许多餐饮企业在供应链管理系统方面存在诸多问题,常常会面临以下困境: ●…

【路径跟踪控制:Bang-Bang 控制与车辆运动学模型】

【路径跟踪控制:Bang-Bang 控制与车辆运动学模型】 1. 引言2. 环境准备3. 车辆运动学模型3.1 理论基础3.2 Python 实现车辆运动学模型建模 4. Bang-Bang 控制策略4.1 理论基础4.1.1 误差角度计算与转向角调整4.1.2 Bang-Bang控制实现 4.2 完整代码4.3 控制策略解释 …

springboot051医院管理系统(论文+源码)_kaic

医院管理系统 摘要 随着信息互联网信息的飞速发展,医院也在创建着属于自己的管理系统。本文介绍了医院管理系统的开发全过程。通过分析企业对于医院管理系统的需求,创建了一个计算机管理医院管理系统的方案。文章介绍了医院管理系统的系统分析部分&#…

万家数科:零售业务信息化融合的探索|OceanBase案例

本文作者:马琳,万家数科数据库专家。 万家数科商业数据有限公司,作为华润万家旗下的信息技术企业,专注于零售行业,在为华润万家提供服务的同时,也积极面向市场,为零售商及其生态系统提供全面的核…

基于DSP+ARM+FPGA的电能质量分析仪的软件设计

软件设计是电能质量设备的核心内容,上述章节详细介绍了电能质量参数的 算法,并且通过仿真实验进行了验证,本章将结合现代电能质量监测设备需求实 现算法在实际电网中应用。根据设计的电能质量分析仪的需求分析,进行总体的 软件…

【Android】Jetpack入门知识总结(LifeCycle,ViewModel,LiveData,DataBinding等)

文章目录 LifeCycle使用Lifecycle解耦页面与组件自定义控件实现LifecycleObserver接口注册生命周期监听器 使用LifecycleService解耦Service与组件使用ProcessLifecycleOwner监听应用程序生命周期 ViewModel用法在 Fragment 中使用 ViewModel LiveDataDataBinding导入依赖基本用…

Redis 性能优化选择:Pika 的配置与使用详解

引言 在我们日常开发中 redis是我们开发业务场景中不可缺少的部分。Redis 凭借其内存存储和快速响应的特点,广泛应用于缓存、消息队列等各种业务场景。然而,随着数据量的不断增长,单节点的 Redis 因为内存限制和并发能力的局限,逐…

FP7127:降压恒流LED芯片 支持双路调色调光 PWM调光

一、降压恒流LED芯片FP7127 FP7127 是平均电流模式控制的 LED 驱动 IC,具有稳定输出恒流的能力,优秀的负载调整率与高精度的电流控制。不用额外增加外部补偿元件,简化 PCB 板设计。输出的LED电流精度为 2%。 如果你想进行PWM数位调光&#…