【中国大学MOOC】北京理工大学 python程序与设计课程
数据的维度
- 一维数据:由对等关系的有序或无序数据构成,采用线性方式组织
列表、数组、集合
- 二维数据:由多个一维数据构成,是一维数据的组合形式
表格
- 高维数据:仅利用最基本的二元关系展示数据间的复杂结构
键值对
数据的操作周期
存储 <–> 表示 <–> 操作
一维数据表示
如果数据有序,使用列表类型[];如果数据没有顺序,使用集合类型{}
一维数组存储
存储方式一:空格分隔 :中国 美国 英国 法国 意大利
使用一个或多个空格分隔进行分隔,不换行
缺点:数据内部不能存在空格
存储方式二:逗号分隔 :中国, 美国, 英国, 法国, 意大利
使用英文半角逗号分隔数据进行存储,不换行
缺点:数据内部不能有英文逗号
存储方式三:其他符号,特殊符号:中国 $ 美国 $ 英国 $ 法国 $ 意大利
一维数据的处理
从空格分隔的文件中读入数据:中国 美国 英国 法国 意大利
f = open(fname,'r')
ls = f.split()
f.close()
采用空格分隔方式将数据写入文件
ls=["中国","美国","英国","法国","意大利"]
f = open(fname, 'w')
f.write(' '.join(ls))
f.close()
二维数据表示
使用二维列表
CSV数据存储格式 Comma-Separated Values
国际通用的一二维数据存储格式,一般.csv扩展名
一般索引习惯为 : ls[row][column],先行后列
根据一般习惯,外层列表每个元素是一行,按行存
从CSV格式的文件中读入数据:
fo = open(fname)
ls = []
for line in fo:
line = line.replace("\n","")
ls.append(line.split(","))
fo.close()
将二维列表写入到CSV格式的文件
ls = [[],[],[]] #二维列表
f = open(fname,'w')
for item in ls:
f.write(','.join(item) + '\n')
f.close()
读取二维列表
采用二层循环
ls = [[1,2],[3,4],[5,6]]
for row in ls:
for column in row:
print(column)