【Python数据分析系列】实现txt文件与列表(list)相互读写转换
off999 2024-10-04 00:19 45 浏览 0 评论
这是Python数据分析系列原创文章,我的第199篇原创文章。
一、问题
平时在做数据分析或者程序开发的时候,需要将中间的一些结果或最后的处理结果保存下来,比如保存为txt格式的文本文件,这就涉及列表与txt之间的一种读取和写入操作,本文将用一个简单的例子来实现。
二、一维列表与txt读写转换
2.1 一维列表写入txt文件
将一维列表data中的每个元素写入文件中,每个元素占一行:
data = [1, 2, 3, 4, 5]
with open("output1.txt", "w") as file:
for item in data:
file.write(str(item) + "\n")上述代码将创建一个名为output1.txt的文本文件,并将列表data中的每个元素写入文件中,每个元素占一行。open("output1.txt", "w")用于打开文件,"w"表示以写入模式打开文件。with open(...) as file:语句用于自动管理文件的打开和关闭,确保在使用完文件后正确关闭它。
for item in data循环遍历列表中的每个元素,并使用file.write(...)将每个元素写入文件。str(item)将元素转换为字符串形式,"\n"表示换行符,用于将每个元素写入文件的不同行。
执行上述代码后,将在当前目录下创建一个名为output.txt的文本文件,并将列表中的元素写入文件中。
需要注意的是,如果列表中的元素不是字符串类型,需要使用适当的方法将其转换为字符串形式,以便写入文件。在上面的示例中,使用str(item)将元素转换为字符串。
2.2 读取txt文件为一维列表
逐行读取文件内容,写入列表:
with open("output1.txt", "r") as file:
data = file.read().splitlines()
print(data)首先使用open("output1.txt", "r")打开名为input.txt的文本文件,以读取模式打开文件。然后,file.read()方法将整个文件内容作为一个字符串读取出来。接下来,splitlines()方法将字符串按行分割,并返回一个包含每行内容的列表。
执行上述代码后,将读取名为output1.txt的文本文件,并将文件中的每一行作为列表的一个元素存储在data中。
请注意,如果文件非常大,一次性读取整个文件内容可能会占用大量内存。在处理大型文件时,可能需要考虑逐行读取或使用其他适当的方法来处理文件内容。
三、二维列表与txt读写转换
3.1 二维列表写入txt文件
将二维列表data中的每个元素写入文件中,每个元素占一行:
data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
with open("output2.txt", "w") as file:
for row in data:
for item in row:
file.write(str(item) + ' ')
file.write('\n')运行以上代码后,将会在当前目录下生成一个名为"output2.txt"的文件,其中包含二维列表的数据。每行表示二维列表中的一行,每个元素之间使用空格分隔。请注意,上述代码将数据以空格分隔并写入文件,如果你需要使用其他分隔符,可以在write()方法中修改。
3.2 读取txt文件为二维列表
读取txt文件,输出为二维列表,每个元素为一行:
with open('output2.txt', 'r') as file:
lines = file.readlines()
data = []
for line in lines:
row = line.strip().split(' ')
data.append(row)lines:
data:
使用readlines()方法读取文件的所有行,并将其存储在一个列表中。遍历行列表,使用split()方法将每行按照指定的分隔符(如空格)分割为多个元素,并将其存储在二维列表中。请注意,上述代码假设每行数据以空格分隔。如果你的文件中使用其他分隔符,可以在split()方法中修改分隔符参数。另外,strip()方法用于去除每行开头和结尾的空白字符,以确保数据的准确性。
作者简介:
读研期间发表6篇SCI数据算法相关论文,目前在某研究院从事数据算法相关研究工作,结合自身科研实践经历不定期持续分享关于Python、数据分析、特征工程、机器学习、深度学习、人工智能系列基础知识与案例。致力于只做原创,以最简单的方式理解和学习,关注我一起交流成长。
原文链接:
相关推荐
- 云骑士装机大师官方网站(云骑士装机大师软件下载)
-
就是感觉正规吧,还有就是小白那种的比较多,专业店一忽悠就掏钱做系统了。懂装机的哪有花钱去装系统的不靠谱,因为会造成个人信息的泄露。云骑士装机大师是网络装机系统,在网络上能够实现一键装机,非常的简洁方便...
- 万能钥匙下载免费(安心上网万能钥匙下载免费)
-
行1.使用手机功能表中自带的浏览器上网,直接搜索需要的软件进行下载安装(下载安卓版本格式为apk)。2.使用电脑下载APK格式的安装包,连接数据线传输至手机,操作手机在应用程序-我的文件中找到安装包,...
- 500兆宽带用什么路由器(家用路由器什么牌子好 信号强)
-
1、飞鱼星千兆无线路由器家用2600M双频企业级高速穿墙500M光纤游戏加速VW1900/千兆双频/1900M/大型企业路由器无线500m推荐理由:可以提供企业级别的性能,空旷环境覆盖更广大,...
- xp系统怎么卸载软件(xp怎么卸载程序)
-
1、选中此电脑,点击鼠标右键。2、选择属性点击一下。3、在打开的界面选择控制面板。4、点击程序选项下方的卸载。5、选择要卸载的程序软件,点击鼠标右键。6、点击弹出的选项卸载/更改。7、也可以使用电脑管...
- 笔记本电脑系统修复软件(笔记本电脑程序修复)
-
1、超级兔子2013系统修复软件超级兔子是一款完整的系统维护工具。拥有电脑系统评测、垃圾清理和注册表清理、可疑文件和插件检测、网页防护等功能,同时自带一些实用的系统工具,可清理你大多数的文件、注册表里...
- 联想保修服务包括哪些(联想保修都保修什么)
-
1、保修36个月的硬件包括:CPU、内存。2、保修24个月的硬件包括:主板、显卡、LCD屏、硬盘、电源适配器、键盘、鼠标模块。3、保修12个月的硬件包括:LCD之附件、光驱、DVD、CDR/W、软驱...
- 系统科学大会(中国系统科学学会)
-
2021年各种科学大会的召开时间取决于疫情的发展和国家政策的调整。一些大型的国际科学会议可能会推迟或者采用线上形式进行,以保障参会人员的安全和健康。同时,一些国内的学术会议也会受到疫情的影响,需要推迟...
- win10系统下载的内容在哪(win10下载的软件在哪个文件夹)
-
进入C:\Windows\SoftwareDistribution\Download目录下,通过win10应用商店中下载的安装包都放在此目录下。进入C:\Windows\SoftwareDistrib...
- 下载原版xp系统光盘(xp光盘系统安装教程怎么安装)
-
方法步骤步骤如下:1、首先打开计算机,在电脑光驱上放入XP光盘,启动电脑后不停按F12、F11、Esc等启动热键,在弹出的启动菜单中选择DVD选项,回车。2、进入光盘主菜单,按数字2或点击选项2运行w...
- windows7中文版下载安装(windows7安装包下载)
-
谢邀,如果你戳设置-时间和语言-区域和语言,右边的语言提示“只允许使用一种语言包”,那么你的系统就是家庭中文版。家庭中文版限定系统界面只能使用简体中文显示,其他功能则与普通家庭版没有区别,也可以使用其...
- win7开机按f2怎么重装系统(win7开机按f12怎么重装系统)
-
开机或重启时,在进入Windows前按F2进入BIOS。 ←→移动到第三个好像是BOOT。 然后将EXTENELBOOT选项设置为ENABLE 最后按F5将第一启动项目设置为EXTENEL...
-
- win10驱动管理(win10驱动程序)
-
win10由于联网后会自动安装驱动,如果自动安装驱动没出现问题,即可视为最佳驱动,若出现问题,卸载出问题的驱动,然后去查自己主板型号,在主板供应商官网下载对应驱动即是最佳01Windows10驱动更新调整当前当你插入连接即插即用(Pn...
-
2025-12-29 05:51 off999
- 手机上怎么找qq邮箱登录(用手机怎么找到qq邮箱)
-
入口是“联系人”选项卡。qq邮箱手机在QQ主菜单中选择下方的“联系人”选项卡;3、在“联系人”中选取“公众号”选项卡;4、在公众号中菜单中找到或搜索“QQ邮箱提醒”,点击进入;5、点击“进入邮箱”;6...
- amd显卡控制面板
-
AMD显卡控制面板是用来管理你的AMD显卡的,可以在控制面板中进行设置一些简单的调整,来提升显卡性能和效果。1、先打开AMD控制面板。2、打开“垂直同步(V-SYNC)”功能,可调整细节,改善影像流畅...
- win10老是未响应卡死(window10总是未响应)
-
具体方法:1、如果win10中的应用程序出现不响应的情况,应该是应用程序加载失败了。可以通过重置方法来解决win10应用程序无响应。2、登录win10系统,用管理员身份运行Powershell(可在C...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
python入门到脱坑 输入与输出—str()函数
-
宝塔面板如何添加免费waf防火墙?(宝塔面板开启https)
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
系统u盘安装(win11系统u盘安装)
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
