深度学习从入门到放弃之四---文件读取和存储

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/LEEANG121/article/details/102575273

深度学习从入门到放弃之四---文件读取和存储


前面一个笔记谈到了tensorflow中队列的读取和保存工作,今天我们简单的介绍一下文件的读取和保存工作。
要读取文件,首先我们需要一个文件。为了便于理解(假设你和我一样对知识一无所知~~),我们先来创建一个文件。创建的方法简单粗暴。如下图所示

在这里插入图片描述

读取文件文本内容

with open('F:\LEEANG\深度学习\BK1\LEEANG.txt') as file_object:
    contents = file_object.read()
    print(contents)
11111111111111
22222222222222
33333333333333
44444444444444

详细解释上述代码:
open()函数接受一个参数:要打开的文件的名称。通常python在当前执行的文件所在的目录中查找指定的文件,该函数常常写为open(filename),上述代码由于文件不在执行的文件所在的目录下,所以加入了文件的地址。
关键字with表示在不需要访问文件后将其关闭。python会在适合的时候自动将需要关闭的结构关闭掉。
在open()函数返回一个表示LEEANG的对象后,我们使用read()方法读取这个文件的全部内容,并将其作为一个长的字符串存储在变量contents中。这样打印contents,就可以显示文件的全部内容。
tips:当文件和执行文件在一个目录内时,我们可以仅注明文件名即可;若不在同一目录,是在执行文件所在目录的子目录下面,我们要提供相对路径;若在其他文件夹,则要提供绝对路径。上述代码表示的是绝对路径。

写入文件

保存数据的方法之一是将数据写入到文件中。通过输出写入文件达到保存文件的目的。这样即使我们关闭了程序,文件依然被保存下来。下次打开文件可以继续使用或者与他人共享我们的输出文件。
如何写入文件,我们首先看下面一段代码:

with open('F:\LEEANG\深度学习\BK1\LEEANG121.txt', 'w') as file_object:
    file_object.write('RNG, IG, FPX)

和上面一样,我们先来解释一下代码:
首先open()函数提供了两个实参。第一个参数‘F:\LEEANG\深度学习\BK1\LEEANG121.txt’是要打开的文件的路径及名称(若没有该文件,这一句代码则相当于在这个路径下创建一个名为LEEANG121的txt文件)。第二个实参‘w’告诉系统我们要以‘写入模式’打开该文件。
我们使用文件对象的方法write()将一个字符串写入文件。

在这里插入图片描述
tips:
1打开文件时可以指定的模式有读取模式‘r’、写入模式‘w’、附加模式‘a’以及可以让你读取和写入的模式‘r+’。其中以写入模式打开文件时,若文件时存在的,则返回文件时文件内容会被清空。

存储数据

使用json.dump()和json.load()进行数据的存储和加载,先上代码:

import json  #导入json模块
numbers = [1, 2, 3, 4, 5]  #定义numbers的列表
filename = 'numbers.json'  #给文件命名
with open(filename, 'w') as f_obj:  #以写入的方法打开文件
    json.dump(numbers, f_obj)  #存储上面的列表数据到文件中

其中json.dump()函数接受两个实参,要存储的数据(即上述代码的列表)以及可以用于存储数据的文件对象

加载上述数据

import json   #导入json模块
filename = 'numbers.json' 
with open(filename) as f_obj:  #打开文件(即之前代码存储的文件)
    numbers = json.load(f_obj)  #将文件内容加载到numbers对象中
print(numbers)   #打印numbers

下回预告:
下一篇笔记,我们会详细讲解csv文件的处理

扫描二维码关注公众号,回复: 7658649 查看本文章

猜你喜欢

转载自blog.csdn.net/LEEANG121/article/details/102575273