Python读写txt文件数据

news2025/1/24 14:50:36

🎈 博主:一只程序猿子

🎈 博客主页:一只程序猿子 博客主页

🎈 个人介绍:爱好(bushi)编程!

🎈 创作不易:如喜欢麻烦您点个👍或者点个⭐

🎈 欢迎访问我的主页(点我直达)

🎈 除此之外您还可以通过个人名片联系我 👉👉👉👉👉👉

                              

如果您很喜欢我的文章且富有,我说:公主 or 王子 请打赏!!!

额滴名片儿
求打赏🥺

 

1.介绍

        本文将详细介绍Python写入数据到txt文件从txt文件读取数据的方法.

        这是一篇python初学者不容错过的内容!!!

2.with open()方法

with open() 是 Python 中用于打开文件的语法结构,它能够简化文件的读取和写入操作。这个语法结构中,open() 函数用于打开文件,with 关键字则用于自动关闭文件。

with open() 方法常用的参数有:

1.file:必需参数,表示要打开的文件名(路径)。

2.mode:可选参数,表示打开文件的模式。常用的模式有:

模式作用
w代表写入模式,当使用该模式打开文件时,如果文件不存在,会自动创建一个新文件;如果文件已经存在,则会清空文件中的原有内容。
a代表追加模式,当使用该模式打开文件时,如果文件不存在,会自动创建一个新文件;如果文件已经存在,则会在文件的末尾追加数据。
x如果文件不存在,创建文件进行写入。如果文件存在,则操作失败。
b以二进制模式打开文件进行写入。
t以文本模式打开文件进行写入。这是默认模式。
+打开文件进行更新(读取和写入)。
U读取文件的全部内容,并将其作为 Unicode 进行读取。

                这些模式可以组合使用,比如 'rb' 代表以二进制模式打开文件进行读取。

3.buffering:可选参数,用于设置文件缓冲。如果设置为 0,表示不进行缓冲;如果设置为非 0 的整数,表示进行缓冲,并设置缓冲区的大小。

4.encoding:可选参数,用于指定文件的编码方式。例如:encoding='utf-8' 表示使用 UTF-8 编码方式读取或写入文件。

5.其他参数:如果需要其他参数,可以在方法中添加对应的参数和值。例如:access_mode='r' 表示设置文件的访问模式为只读。

3.示例源码及运行结果

(1)读取文本数据

        这里介绍一下读取时使用到的read()方法和readlines()方法:

f.read() 和 f.readlines() 是 Python 中用于从文件读取数据的两个方法,它们之间存在一些重要的区别。

  1. 返回值类型:

    • f.read(): 此方法返回文件中的所有内容作为字符串。如果文件非常大,使用 f.read() 可能会导致内存问题。
    • f.readlines(): 此方法返回一个包含文件中所有行的列表,每一行都是一个字符串。对于大文件,使用 f.readlines() 可能更有效率,因为它一次只读取一行数据。
  2. 内存使用:

    • f.read(): 由于会一次性读取整个文件的内容,所以如果文件非常大,这可能会导致内存问题。
    • f.readlines(): 由于它是逐行读取文件的,所以即使文件非常大,也不会占用太多内存。
  3. 性能:

    • f.read(): 通常比 f.readlines() 更快,因为它一次性读取整个文件。
    • f.readlines(): 如果文件非常大,逐行读取可能会比较慢。
  4. 用途:

    • f.read(): 通常用于当你需要一次性读取整个文件或者当你希望避免内存问题时。
    • f.readlines(): 通常用于当你需要按行处理文件或者当你希望逐行处理文件时。

        代码1(完全读取):

with open("data/test1.txt", "r", encoding='utf-8') as f:
	# 读取数据
	data = f.read()
	# 打印数据
	print(data)

        运行效果:

        代码2(逐行读取): 

with open("data/test1.txt", "r", encoding='utf-8') as f:
	lines = f.readlines()

	# # 打印第一行数据
	# print(lines[0])

	# 逐行打印所有数据
	for line in lines:
		print(line)

        运行效果:

(2)存储文本数据

        代码:

data = """这是即将存入txt文件中的内容
by 一只程序猿子
2023/12/6
"""

# 使用 'with' 语句打开文件,这样可以确保文件在使用完后会被正确关闭,无论中途是否发生错误。
# 使用 "utf-8" 编码打开文件,这样可以确保对非ASCII字符的正确处理。
# 如果你要在文件中追加内容而不是覆盖原有内容,可以使用 'a' 模式
with open("data/text2.txt", "w", encoding="utf-8") as f:
	# 使用 write() 函数将 data 变量的内容写入文件。
	f.write(data)
	print("数据存入成功...")

        运行效果:

4.总结

        这里我们演示了如何使用Python从txt文件读取数据和存储数据,希望对Python初学者有所帮助!

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

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

相关文章

OkGo导入失败解决办法

jcenter()maven { url "https://jitpack.io" }再同步就可以了

【3DsMax】制作简单的骨骼动画

效果 步骤 首先准备4个板子模型展开放置好 添加一个4段的骨骼 选中其中的一块板子添加蒙皮命令 在蒙皮的参数面板中,设置每块板子对应哪块骨骼 设置好后你可以发现此时就已经可以通过骨骼来控制模型了 接下来就可以制作动画 点击左下角“时间配置”按钮 设置一下动…

二叉树OJ题之三

哈喽伙伴们,有一段时间没更新博客了,主要是这段时间要准备学校的期末考试,所以没有把部分时间分给博客,今天我们一起去接着看二叉树递归有关的OJ题,今天我们要学习的是 判断相同的树,力扣题目--100 &…

案例052:用于日语词汇学习的微信小程序

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…

inBuilder低代码平台新特性推荐-第十四期

各位CSDN的友友们,大家好~ 今天来给大家介绍一下inBuilder低代码平台社区版中特性推荐系列第十四期——导入校验构件 关键特性 导入支持全流程扩展:当基本导入难以满足需求时,可通过自定义扩展构件在导入全流程中进行扩展实现绿色为可扩展的…

生成对抗网络——研讨会

时隔一年,再跟着李沐大师学习了GAN之后,仍旧没能在离散优化中实现通用的应用,实在惭愧,借着组内研讨会的机会,再队GAN的前世今生做一个简单的综述。 GAN产生的背景 目前与GAN相关的应用 去reddit社区的机器学习板块…

会议邀请 | 思腾合力邀您共赴2023“机器人+”智能制造先进成果展

为进一步提升制造业活力,推动机器人技术研发和场景开发不断向下游应用空间拓展延伸,2023机器人与智能制造强国论坛及系列主题活动将于12月7日至9日在山东省济宁市举办。思腾合力作为行业领先的人工智能基础架构解决方案商,受邀参加本次盛会的…

软件测试项目实战

目录 一、引言 二、测试任务 三、测试进度 四、测试资源 五、测试策略 六、测试完成标准 七、风险和约束 八、问题严重程度描述和响应时间规范 九、测试的主要角色和职责 ​有需要实战项目的评论区留言吧! 软件测试是使用人工或者自动的手段来运行或者测定…

consistency model

Consistency is All You Need - wrong.wang什么都不用做生成却快了十倍其实也并非完全不可能https://wrong.wang/blog/20231111-consistency-is-all-you-need/[学科基础] 从布朗运动到扩散模型采样算法 - 知乎引言 扩散模型是近年来新出现的一种生成模型,很多工作将…

python爬虫-某公开数据网站实例小记

注意!!!!某XX网站逆向实例仅作为学习案例,禁止其他个人以及团体做谋利用途!!! 第一步:分析页面和请求方式 此网站没有技巧的加密,仅是需要携带cookie和请求…

外包干了2个多月,技术明显有退步了。。。。。

先说一下自己的情况,本科生,19年通过校招进入武汉某软件公司,干了接近4年的功能测试,今年国庆,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试…

查看端口占用并杀死进程

1.安装查看工具 sudo yum install net-tools 2.查看占用情况 netstat -tunlp | grep 8089 3.杀死进程 kill -9 227

已解决error: (-215:Assertion failed) inv_scale_x > 0 in function ‘cv::resize‘

需求背景 欲使用opencv的resize函数将图像沿着纵轴放大一倍,即原来的图像大小为(384, 512), 现在需要将图像放大为(768, 512)。 源码 import cv2 import numpy as np# 生成初始图像 img np.zeros((384, 512), dtypenp.uint8) img[172:212, 32:-32] 255 H, W …

优化 uniapp 发行操作:一键打包、混淆代码

​ uniapp一键发行代码并混淆代码 第一步.在项目根目录下安装插件 npm install javascript-obfuscator -g安装完成后,javascript-obfuscator就是一个独立的可执行命令了。 javascript-obfuscator -v第二步:HbuilderX点击发行按钮,打包代码…

【网络安全技术】IPsec——AH和ESP

一、IPsec通信 主要是两个协议,认证头AH(Authentication Header)和封装安全载荷ESP(Encapsulate Security Payload)。AH提供了认证(integrity,抗否认,抗重放)&#xff0c…

正则表达式(5):常用符号

正则表达式(5):常用符号 小结 本博文转载自 在本博客中,”正则表达式”为一系列文章,如果你想要从头学习怎样在Linux中使用正则,可以参考此系列文章,直达链接如下: 在Linux中使用正…

使用Go快速开发TCP公共服务

使用Go快速开发TCP公共服务 文章目录 使用Go快速开发TCP公共服务一、前言二、实现思路三、源码四、测试使用五、最后 一、前言 之前使用的公共TCP服务无法使用了,想了一下整个实现原理不是很复杂,就利用Go快速开发了一个,利用公网服务器可以…

Uncle Maker: (Time)Stamping Out The Competition in Ethereum

目录 笔记后续的研究方向摘要引言贡献攻击的简要概述 Uncle Maker: (Time)Stamping Out The Competition in Ethereum CCS 2023 笔记 本文对以太坊 1 的共识机制进行了攻击,该机制允许矿工获得比诚实同行更高的挖矿奖励。这种名为“Uncle Maker”的攻击操纵区块时间…

CMake编译C++项目并链接动态库

CMake编译C项目并链接动态库 最近遇到一个用CMake来编译的project。需要编译整个项目src code以及字库,并使用。我的项目目录是张这样的。 编译的时候会有两中不同的办法,一种是把库集成到可执行文件中,一种是编译成静态库然后使用。 1. 集…

STM32基础教程 p16 窗口看门狗(WWDG)

1 窗口看门狗工作原理 1.1 简介 WWDG简介 窗口看门狗通常被用来监测,由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运 行序列而产生的软件故障。除非递减计数器的值在T6位变成0前被刷新,看门狗电路在达到预置 的时间周期时,会产…