h、数据存储

数据存储

1、文件存储

1.1、TXT文本存储

1.1.1、文件方法

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

file: 必需,文件路径(相对或者绝对路径)。
mode: 可选,文件打开模式
buffering: 设置缓冲
encoding: 一般使用utf8
errors: 报错级别
newline: 区分换行符
closefd: 传入的file参数类型
opener:

模式 描述
t 文本模式 (默认)。
x 写模式,新建一个文件,如果该文件已存在则会报错。
b 二进制模式。
+ 打开一个文件进行更新(可读可写)。
U 通用换行模式(Python 3 不支持)。
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。
r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。
w 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
w+ 打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

1.1.2、简化写法

with open(文件名, 写入模式,编码格式) as 别名:
	file.write(str)

1.2、JSON文件存储

JSON,全称为 JavaScript O同ect Notation, 也就是 JavaScript对象标记, 它通过对象和数组的组合 米表示数据,构造简洁但是结构化程度非常高,是一种轻量级的数据交换格式。

1.2.1、对象和数组

对象:它在 JavaScript 中是使用花括号{}包裹起来的内容,数据结构为{keyl: va luel, key2: value2, … }的键值对结构。 在面向对象的语言中, key 为对象的属性, value 为对应的值。 键名可以使用整数和字符串来表示。 值的类型可以是任意类型。

数组:数组在 JavaScript 中是方括号[]包裹起来的内容,数据结构为[”java”, ”javascript”, "vb'’,.. . ]的索引结构。在 JavaScript 中, 数组是一种比较特殊的数据类型,它也可以像对象那样使用键值对,但还是索引用得多。 同样,值的类型可以是任意类型。

1.2.2、读取JSON

loads():将文件中的字符串转化为JSON对象

load():将字符串转化为JSON对象

1.2.3、输出JSON

dumps():将文件中的JSON对象转化为字符串

dump():将JSON对象转化为字符串

1.2.4、简化写法

with open(文件名, 写入模式,编码格式) as 别名:
	file.write(json.dumps(数据,indent=缩进数))

1.3、CSV文件存储

csv,全称为 Comma-Separated Values,中文可以叫作逗号分隔值或字符分隔值,其文件以纯文 本形式存储表格数据。 该文件是一个字符序列,可以由任意数目的记录组成,记录间以某种换行符分 隔。 每条记录由字段组成,字段间的分隔符是其他字符或字符串,最常见的是逗号或制表符。 不过所 有记录都有完全相同的字段序列 ,相当于一个结构化表的纯文本形式。

1.3.1、写入

csv.writer()初始化写入对象并传入delimiter分隔符

csv.DictWriter()初始化字典写入对象

writerow()传入每行数据即完成写入

1.3.2、读取

csv.reader():构建Reader对象,通过遍历以列表形式输出每行内容

pandas.read_csv():通过pandas的read_csv方法读取CSV格式

posted @ 2021-03-31 07:26  昵称已经被使用  阅读(64)  评论(0)    收藏  举报