首页 > 编程语言 > 详细

python基础之文件读取

时间:2021-04-11 15:50:10      阅读:14      评论:0      收藏:0      [点我收藏+]

在python中,读取文件内容用系统内置方法open()

open()的参数:
1、file:文件。
    tips:若file文件和当前文件在同个文件夹内,直接填写文件名。若不在同个文件夹内,则填写完整路径(相对路径和绝对路径都可)
2、mode:模式。
技术分享图片

 

 3、buffering:缓存
 4、encoding:编码
 5、errors:(暂未了解)
 6、newline: (暂未了解)
 7、closefd:(暂未了解)
关于参数,不用死记硬背,了解常用的r,w,rb,wb等即可,需要用时回头查看即可。

open()方式返回一个文件流;

文件流的方法:
read():读取文件的所有内容
readable():判断是否可读,返回一个布尔值
readline():逐行读取
readlines():读取所有行,以列表形式返回。

栗子:
目录结构如下:fff.py和123.txt在同个目录中:
技术分享图片

 

 现在我们要在fff.py中读取123.txt的内容

file_stream = open("123.txt", "r", encoding="utf-8")
file_content = file_stream.read()
print(file_content)

步骤:
1、open()一个文件,给出文件路径(由于是在同个文件夹内,写上文件名即可),读取模式,以及编码
2、打开文件后会返回一个文件流,用一个变量接收(后续会将with 上下文管理,到时候就可以不用变量来显式接收)
3、文件流调用read()方法,获取文件内容。
响应结果:

this is a txt file
hello world
hello my honey


readable栗子:

file_stream = open("123.txt", "r", encoding="utf-8")
print(file_stream.readable())

返回结果:

True

说明文件是可读的

readline栗子:

file_stream = open("123.txt", "r", encoding="utf-8")
print(file_stream.readline())
print("-----")
print(file_stream.readline())

打印结果:

this is a txt file

-----
hello world

我们可以看到,每调用一次readline()就会读取一行数据。
tips:readline()有一个选填参数limit,表示读多少个字符,默认为-1,即读取所有。

我们来看一下:

file_stream = open("123.txt", "r", encoding="utf-8")
print(file_stream.readline(2))

执行结果:

th

我们可以看到,加上limit参数“2”后,只读取了2个字符。

 

readlines栗子:

file_stream = open("123.txt", "r", encoding="utf-8")
print(file_stream.readlines())

结果:

[this is a txt file\n, hello world\n, hello my honey]

我们可以看到,返回了一个列表,列表中的每个参数都是一行(换行符也包括在内)


tips: 直接用open()方法打开一个文件流后,最后要关闭文件流,不然会造成内存的泄露。

python基础之文件读取

原文:https://www.cnblogs.com/ctltest/p/14643561.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!