在Python编程中,从一个文件中读取数据可以通过以下3种方式。
1.使用read方法读取文件
read方法可以从文件中读取数据,该方法的定义语法如下:
read(size)
上述方法中,size表示要从文件中读取的数据的长度,单位为字节。如果没有指定size,那么就表示读取文件的全部数据。
接下来,通过一个案例来演示如何读取例8-1中itheima.txt文件中的数据,如例8-2所示。
例8-2 使用read方法读取文件
file = open('itheima.txt', 'r')
content = file.read(12)
print(content)
print("-" *30)
content = file.read()
print(content)
file.close()
运行结果如图8-2所示。
图8-2 运行结果
2.使用readlines方法读取文件
若文件的内容很少,则可以使用readlines方法把整个文件中的内容进行一次性读取。readlines方法会返回一个列表,列表中的每一个元素为文件中的每一行数据。假设文件“itheima.txt”里面有3行数据“hello itheima,i am here!”,那么,使用readlines方法读取文件的方式如例8-3所示。
例8-3 使用readlines方法读取文件
file = open('itheima.txt', 'r')
content = file.readlines()
i = 1
for temp in content:
print("%d:%s" % (i, temp))
i += 1
file.close()
运行结果如图8-3所示。
图8-3 运行结果
3.使用readline方法一行一行读数据
使用readline方法可以一行一行地读取文件中的数据。同样,以读取itheima.txt文件为例,使用readline方法读取文件的方式如例8-4所示。
例8-4 使用readline方法读取数据
file = open('itheima.txt', 'r')
content = file.readline()
print("1:%s"%content)
content = file.readline()
print("2:%s"%content)
file.close()
程序的运行结果如图8-4所示。
图8-4 运行结果
思考题:
如果一个文件很大,如5GB,试想应该怎样把文件的数据读取到内存然后进行处理。