Python语言程序设计----【第7周 文件和数据格式化】之7.3 一维数据的格式化和处理

一、数据组织的维度

从一个数据到一组数据

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

1、一维数据

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

3.1413, 3.1398, 3.1404, 3.1401, 3.1349, 3.1376

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

2、二维数据

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

表格是典型的二维数据

3、多维数据

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

4、高维数据

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

在字典中,使用键值对来表示值和属性之间的关系,对键值对进行有效组织,可以表达更复杂的逻辑关系,即高维数据

{
    "firstName" : "Tian" ,
    "lastName" : "Song" ,
    "address" : {
        "streetAddr" : "中关村南大街5号" ,
        "city" : "北京市" ,
        "zipcode" : "100081"
                } ,
"professional" : ["Computer Networking" , "Security"]
}

5、数据的操作周期

存储(磁盘) <-> 表示(程序) <-> 操作

二、一维数据的表示

1、一维数据的表示

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

ls = [3.1398, 3.1349, 3.1376]

- 列表类型可以表达一维有序数据
- for循环可以遍历数据,进而对每个数据进行处理

2、一维数据的表示

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

st = {3.1398, 3.1349, 3.1376}

- 集合类型可以表达一维无序数据
- for循环可以遍历数据,进而对每个数据进行处理

三、一维数据的存储

1、存储方式一:空格分隔

中国 美国 日本 德国 法国 英国 意大利

- 使用一个或多个空格分隔进行存储,不换行
- 缺点:数据中不能存在空格(如果数据中本身也存在空格,将无法区分这个空格是在数据内内部,还是在数据之间)

2、存储方式二:逗号分隔

中国,美国,日本,德国,法国,英国,意大利

- 使用英文半角逗号分隔数据进行存储,不换行
- 缺点:数据中不能有英文逗号(原因同上)

3、存储方式三:其他方式

中国$美国$日本$德国$法国$英国$意大利

- 使用其他符号或符号组合分隔,建议采用特殊符号
- 缺点:需要根据数据特点定义,通用性较差

四、一维数据的处理(读写)

1、数据的处理

存储 <-> 表示

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

2、一维数据的读入处理

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

中国 美国 日本 德国 法国 英国 意大利

注:.read()得到一串字符串,ls为列表

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

中国$美国$日本$德国$法国$英国$意大利

3、一维数据的写入处理

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

ls = ['中国', '美国', '日本']
f = open(fname, 'w')#打开文件,执行写操作
f.write(' '.join(ls))
f.close()

注:join()方法是指将join前面的字符串(这里是空格)分割放置到后边的join参数中各个元素之间 

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

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

总结:文件写入字符:join方法;文件用字符分割:split方法 


单元小结:

- 数据的维度:一维、二维、多维、高维
- 一维数据的表示:列表类型(有序)和集合类型(无序)
- 一维数据的存储:空格分隔、逗号分隔、特殊符号分隔
- 一维数据的处理:字符串方法 .split() 和 .join()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cheeky_man

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值