1.1 数据的分类(基于维度)
根据组织数据时与数据有联系的参数的数量,数据可以分为以下三类。
(1)一维数据
1.一维数据是具有对等关系的一组线性数据,对应 数学中的集合、一维数组。
2.在Python中,一维列表、一维元组、一维集合都是一维数据。
3.可通过逗号、空格等符号分隔一维数据中的各个元素。
(2)二维数据
1.二维数据关联参数的数量为2,对应 数学中的矩阵、二维数组。
2.在Python中,二维列表、二维元组等都是二维数据。
3.表格是最常见的二维数据的组织形式,故二维数据也称为表格数据。
(3)多维数据
1.多维数据利用键值对等简单的二元关系展示数据间的复杂结构,Python中的字典类型的数据是多维数据。
2.多维数据在网络应用中经常见,计算机中常见的多维数据格式有HTML、JSON等等。
1.2 数据的存储
数据通常存储在文件中。
为了方便后续的读写操作,数据通常需要按照约定的组织方式进行存储。
(1)一维数据的存储
1.一维数据呈线性排列,一般用特殊字符分隔,如逗号、空格、&
2.在存储一维数据时可以使用不同的特殊字符分隔数据元素,但需注意:
(1)同一文件或同一组文件一般使用同一分隔符分隔。
(2)分隔数据的分隔符不应该出现在数据中。
(3)分隔符为英文半角符号,一般不使用中文符号作为分隔符。
例子: 成都&杭州&广州*北京
成都 杭州 广州 北京
(2)二维数据的存储
1.二维数据可视为多条一维数据的集合,当二维数据只有一个元素时,这个二维数据就是一维数据。
2.国际上通用的一维数据和二维数据存储格式为CSV。
3.CSV文件:
以纯文本形式存储表格数据,文件的每一行对应表格中的一条数据记录,每条记录由一个或多个字段组成,字段之间使用逗号(英文、半角)分隔。
因为字段之间可能使用除逗号外的其他分隔符,所以CSV也叫字符分隔值。
4.CSV广泛应用于不同体系结构下网络应用程序之间表格信息的交换中,它本身并无明确格式标准,具体标准一般由传输双方协商决定。
例子: 姓名,语文,数学,英语
张三, 111, 111, 111
李四, 111, 111, 111
1.3 数据的写入
数据的写入步骤:
1、创建文件:调用 open() 函数
2、创建对象:借助 writer() 函数
3、写入内容:调用 writer 对象的 writerow() 方法
4、关闭文件:close()
import csv #导入csv模块
csv_file = open('D:\\Python_code\\score.csv','w',newline='',encoding='utf-8') # 调用open()函数打开csv文件,传入参数
writer = csv.writer(csv_file) # 用csv.writer()函数创建一个writer对象
writer.writerow('\ufeff') # 解决使用excel打开时中文字符出现乱码情况
writer.writerow(['电影','豆瓣评分']) # 调用writer对象的writerow()方法,可以在csv文件里写入一行文字 “电影”和“豆瓣评分”。
writer.writerow(['银河护卫队','8.0'])
writer.writerow(['复仇者联盟','8.1'])
csv_file.close() # 写入完成后,关闭文件
1.4 数据的读取
计算机采用CSV格式存储的数据其文件后缀名一般为.csv,这种文件在Windows平台上可通过Excel或记事本打开。
数据的读取步骤:
1、打开文件:调用open()函数
2、创建对象:借助reader()函数
3、读取内容:遍历reader对象
4、打印内容:print()
import csv
csv_file=open('D:\\Python_code\\score.csv','r',newline='',encoding='utf-8')
# 用open()打开“demo.csv”文件,'r'是read读取模式,newline=''是避免出现两倍行距。encoding='utf-8'能避免编码问题导致的报错或乱码
reader=csv.reader(csv_file) # 用csv.reader()函数创建一个reader对象
for row in reader: # 用for循环遍历reader对象的每一行。打印row,就能读取出“demo.csv”文件里的内容
print(row)
csv_file.close()
# 以上程序打开文件score.csv后通过对文件对象进行迭代,在循环中逐条获取文字的记录,将记录存储到列表中,最后在终端打印列表
1.5 多维数据的格式化
三维以上的多维数据统一采用键值对的形式进行格式化。
网络平台上传递的数据大多数是高维数据,JSON是一种轻量级的数据交换格式,本质上是一种被格式化的字符串。
JSON语法是JavaScript语法的子集,JavaScript语言中一切都是对象,因此JSON也以对象的形式表示数据。
JSON格式的数据遵循以下语法规则:
(1)数据存储在键值对(key:value)中,例如“姓名”:”张三“。
(2)数据的字段由逗号分隔,例如“姓名“:”张三",”语文":“111”。
(3)一个花括号保存一个JSON对象,例如{“姓名”:“张三”,”语文”:"111”}。
(4)一个方括号保存一个数组,例如[{”姓名”:”张三",”语文”:“111”}]。
假设目前有存储了考试成绩的JSON数据,具体如下所示:
“考试成绩":[
{"姓名":"张三"
"语文":"111"
"数学":"111"
"英语":"111"};
{"姓名":"李四",
"语文":"111"
"数学":"111"
"英语":"111",};
]
以上数据首先是一个键值对,key为“考试成绩”,value与key通过冒号“:”分隔;其次value本身是一个数组,该数组中存储了多名学生的成绩,通过方括号
组织,其中的元素通过分号“;”分隔;作为数组元素的学生成绩的每项属性亦为键值对,每项属性通过逗号“,”分隔。
除JSON外,网络平台也会使用XML、HTML等格式组织多维数据。XML和HTML格式通过标签组织数据。例如将学生成绩以XML格式存储,具体格式如下:
<考试成绩>
<姓名>张三</姓名><语文>111</语文><数学>117<数学/><英语>115<英语/>
<姓名>李四</姓名><语文>111</语文><数学>141<数学/><英语>111<英语/>
</考试成绩>
对比JSON格式与XML、HTML格式可知,JSON格式更为直观,且数据属性的key只需存储一次,在网络中进行数据交换时耗费的流量更小。
标签:存储,格式化,Python,writer,111,一维,csv,数据
From: https://blog.csdn.net/By18825481262/article/details/141899962