07-03 一维数据的格式化和处理

_______egon新书来袭请看:https://egonlin.com/book.html

一、概述

  • 数据组织的维度
  • 一维数据的表示
  • 一维数据的存储
  • 一维数据的处理

二、数据组织的维度

2.1 从一个数据到一组数据

2.2 维度:一组数据的组织形式

2.3 一维数据

由对等关系的有序或无序数据构成,采用线性方式组织

3.1413, 3.1398, 3.1404, 3.1401, 3.1349, 3.1376

  • 对应列表、数组和集合等概念

2.4 二维数据

由多个一维数据构成,是一维数据的组合形式

表格是典型的二维数据,其中,表头是二维数据的一部分

2.5 多维数据

由一维或二维数据在新维度上扩展形成

2.6 高维数据

仅利用最基本的二元关系展示数据间的复杂结构

2.7 数据的操作周期

存储 <-> 表示 <-> 操作

三、一维数据的表示

3.1 如果数据间有序:使用列表类型

ls = [3.1398, 3.1349, 3.1376]
  • 列表类型可以表达一维有序数据
  • for循环可以遍历数据,进而对每个数据进行处理

3.2 如果数据间无序:使用集合类型

st = {3.1398, 3.1349, 3.1376}
  • 集合类型可以表达一维无序数据
  • for循环可以遍历数据,进而对每个数据进行处理

四、一维数据的存储

4.1 存储方式一:空格分隔

中国 美国 日本 德国 法国 英国 意大利
  • 使用一个或多个空格分隔进行存储,不换行
  • 缺点:数据中不能存在空格

4.2 存储方式二:逗号分隔

中国,美国,日本,德国,法国,英国,意大利
  • 使用英文半角逗号分隔数据进行存储,不换行
  • 缺点:数据中不能有英文逗号

4.3 存储方式三:其他方式

中国$美国$日本$德国$法国$英国$意大利
  • 使用其他符号或符号组合分隔,建议采用特殊符号
  • 缺点:需要根据数据特点定义,通用性较差

五、一维数据的处理

5.1 数据的处理

存储 <-> 表示

  • 将存储的数据读入程序
  • 将程序表示的数据写入文件

5.2 一维数据的读入处理

5.2.1 从空格分隔的文件中读入数据

中国 美国 日本 德国 法国 英国 意大利
txt = open(fname).read()
ls = txt.split()
f.close()
print(ls)  # ['中国', '美国', '日本', '德国 ', '法国', '英国', '意大利']

5.2.2 从特殊符号分隔的文件中读入数据

中国$美国$日本$德国$法国$英国$意大利
txt = open(fname).read()
ls = txt.split('$')
f.close()
print(ls)  # ['中国', '美国', '日本', '德国 ', '法国', '英国', '意大利']

5.3 一维数据的写入处理

5.3.1 采用空格分隔方式将数据写入文件

ls = ['中国', '美国', '日本']
f = open(fname, 'w')
f.write(' '.join(ls))
f.close()

5.3.2 采用特殊分隔方式将数据写入文件

ls = ['中国', '美国', '日本']
f = open(fname, 'w')
f.write('$'.join(ls))
f.close()

六、单元小结

6.1 一维数据的格式化和处理

  • 数据的维度:一维、二维、多维、高维
  • 一维数据的表示:列表类型(有序)和集合类型(无序)
  • 一维数据的存储:空格分隔、逗号分隔、特殊符号分隔
  • 一维数据的处理:字符串方法 .split() 和 .join()
posted @ 2019-10-21 13:36  小猿取经-林海峰老师  阅读(470)  评论(0编辑  收藏  举报