如何用Python将文本文件读入列表或数组?
Python内置了文件创建、写入和读取功能。在Python中,可以处理两种类型的文件:文本文件和二进制文件(以二进制语言,0和1编写)。有6种访问文件模式。
要读取文本文件,我们使用只读 ('r') 模式打开文本文件进行读取。句柄位于文档的开头。
有几种方法可以使用python将文本文件读入列表或数组
使用open()方法
open()函数从打开的文件创建一个文件对象。文件名和模式参数传递给open()函数。
示例
以下是一个示例,其中使用open()函数以只读模式打开文件。现在,借助read()函数读取文件。然后,使用print()函数打印文件的数据。
#Python program to read a text file into a list #opening a file in read mode using open() file = open('example.txt', 'r') #read text file into list data = file.read() #printing the data of the file print(data)
输出
执行上述程序后,将生成以下输出。
Coding encourages you to use logic and algorithms to create a program. When facing a new challenge, you need to follow a logical approach to solve the issue. Therefore, this is an exercise for your brain to train up your logical ability.
逻辑思维不仅关乎解决算法,也对您的个人和职业生活大有裨益。
使用numpy的load()方法
在Python中,numpy.load()用于从文本文件加载数据,目标是快速读取简单的文本文件。文件名和模式参数传递给open()函数。
示例1
在下面的示例中,从numpy模块导入loadtxt,并将文本文件读入numpy数组。使用print()函数将数据打印到列表中。
from numpy import loadtxt #read text file into NumPy array data = loadtxt('example.txt') #printing the data into the list print(data) print(data.dtype)
输出
执行上述程序后,将生成以下输出。
[ 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.] Float64
loadtxt()允许我们在导入文本文件时选择数据类型,这是loadtxt()的一个很好的特性。让我们使用整数来指定要导入到NumPy数组中的文本文件。
示例2
在下面的示例中,从numpy模块导入loadtxt。使用loadtxt()函数将文本文件读入numpy数组。然后,使用print()函数将数据打印到列表中。
from numpy import loadtxt #read text file into NumPy array data = loadtxt('example.txt', dtype='int') #printing the data into the list print(data) print(data.dtype)
输出
执行上述程序后,将生成以下输出。
[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14] int32
使用data.replace()方法
使用Pandas创建的数据框。在数据框中,replace()函数用于替换字符串、正则表达式、列表、字典、序列、数字等等。由于其多种变体,这是一个非常强大的函数。
示例
在下面的示例中,文件以读取模式打开,并使用read()函数读取。行尾'\n'被替换为' ',如果进一步看到'。',则文本被分割。现在,使用print()函数将数据打印为输出。
#program to read a text file into a list #opening the file in read mode file = open("example.txt", "r") data = file.read() # replacing end of line('/n') with ' ' and # splitting the text it further when '.' is seen. list = data.replace('\n', '').split(".") # printing the data print(list) file.close()
输出
执行上述程序后,将生成以下输出。
[' Coding encourages you to use logic and algorithms to create a program', 'When facing a new challenge, you need to follow a logical approach to solve the issue', 'Therefore, this is an exercise for your brain to train up your logical ability', ' Logical thinking is not only about solving algorithms but also beneficial to your personal and professional life', '']