在python中读取文件常用的三种方法:read(),readline(),readlines()
准备
假设a.txt的内容如下所示:
Hello
Welcome
What is the fuck...
一、read([size])方法
read([size])
方法从文件当前位置起读取size个字节,若无参数size,则表示读取至文件结束为止,它范围为字符串对象
1 2 3 4 5 | f = open ( "a.txt" )
lines = f.read()
print lines
print ( type (lines))
f.close()
|
输出结果:
Hello
Welcome
What is the fuck...
<type 'str'> #字符串类型
二、readline()方法
从字面意思可以看出,该方法每次读出一行内容,所以,读取时占用内存小,比较适合大文件,该方法返回一个字符串对象。
1 2 3 4 5 6 7 | f = open ( "a.txt" )
line = f.readline()
print ( type (line))
while line:
print line,
line = f.readline()
f.close()
|
输出结果:
<type 'str'>
Hello
Welcome
What is the fuck...
三、readlines()方法读取整个文件所有行,保存在一个列表(list)变量中,每行作为一个元素,但读取大文件会比较占内存。
1 2 3 4 5 6 | f = open ( "a.txt" )
lines = f.readlines()
print ( type (lines))
for line in lines:
print line,
f.close()
|
输出结果:
<type 'list'>
Hello
Welcome
What is the fuck...
四、linecache模块
当然,有特殊需求还可以用linecache模块,比如你要输出某个文件的第n行:
1 2 3 | text = linecache.getline(‘a.txt', 2 )
print text,
|
对于大文件效率还可以。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· Trae初体验