Python从文件中读取数据

Posted tizer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python从文件中读取数据相关的知识,希望对你有一定的参考价值。

一、读取整个文件内容

在读取文件之前,我们先创建一个文本文件resource.txt作为源文件。

resource.txt

 

my name is joker,
I am 18 years old,
How about you?

 

如何读取文件全部内容,我们编写到reader.py文件中。

reader.py

1 with open(resource.txt) as file_obj:
2     content = file_obj.read()
3     print(content)
4         

需要注意的是需要将resource.txt文件与read.py 放在同一目录下。

运行后的结果如下:

技术图片

解释:open函数接收一个参数,此参数为将被读取内容的文件名,在调用之后返回表示这个文件的对象,Python将之存储在后面的变量(file_obj)中,关键字 with 在我们不再需要使用文件的时候将其关闭。

 上面的代码中open() 函数中传入的是一个相对路径,相对路径会从当前文件(reader.py)所在文件夹下查找指定文件(resource.txt),如果文件不在当前文件夹下,可以使用绝对路径。Linux系统绝对路径如:

/home/joker/dic这样的,Windows系统的绝对路径如:C:/pyhton_workspace/dic 这样的。

二、逐行读取文件内容

1 file_name = resource.txt
2 
3 with open(file_name) as file_obj:
4     for content in file_obj:
5         print(content)

控制台打印如下:

技术图片

解释:在上面的程序中,因为Python在读取文件之后将其存入对象file_obj 中,我们通过对该对象进行循环来遍历文件中的每一行,但是却发现,多了空白行,因为在这个文件中,有看不见的换行符,且print语句语句也会加上一个换行符,因此每行的末尾会有两个换行符。要消除多于的空白行可在print语句中调用rstrip() 方法,如下:

1 file_name = resource.txt
2 
3 with open(file_name) as file_obj:
4     for content in file_obj:
5         print(content.rstrip())

控制台打印如下:

技术图片

现在,和与读取整个文件的输出相同了。

 

以上是关于Python从文件中读取数据的主要内容,如果未能解决你的问题,请参考以下文章

Python从输入文件中读取数据

python - 如何在python中附加一个列表时处理异常,其中包含从存储从.json文件读取的数据的dict读取的数据?

在iPhone中如何读取文件?

python之从文件中按行读取数据

.NET如何从配置文件中读取数据

Python从文件中读取数据