文件
与c/c++相似,在这里不做描述,详情请见拙作
c语言 文件
数据
一维数据:
由对等关系的有序或无序数据构成,采用线性方式组织
对应列表、数组、集合等概念
二维数据:
两个一维数据组成的数据组织形式
表格是典型的二维数据,表头是二维数据的一部分
多维数据:
是由一维数据或者二维数据在新维度上的扩展
高维数据:
利用最基本的二元关系展示数据间的复杂结构
一维数据
数据间有序:列表结构
数据间无序:集合结构
一维数据的存储
1、空格分隔:例如:中国 美国 意大利
缺点是数据中不能有空格
2、逗号分隔:例如:中国,美国,意大利
缺点是数据中不能有逗号
3、其他方式:使用特殊字符进行分隔,数据中没有的字符进行分隔
一维数据的操作
txt = open(fname).read()
ls = txt.split() #按空格分隔读入文件,形成列表形式
f.close
txt = open(fname).read()
ls = txt.split($) #按$分隔读入文件,形成列表形式
f.close
ls = ['中国','美国']
f = open(fname,'w')
f.write(' '.join(ls)) #按空格分隔将列表写入文件,用特殊字符替换空格可实现特殊字符分隔写入
f.close
二维数据
一般使用列表类型表达数据
二维列表
参考c/c++二维数组
ls [行] [列]
ls = [[1,2],[3,4],[5,6]] #二维列表的遍历
for row in ls :
for column in row :
print(column)
CSV
用逗号分割的数据存储形式,不存在空行,一般扩展名为 .csv 可以使用一般的编辑软件打开或编辑
如果某个数据缺失,逗号需要保留
二维数据表头可以当作数据存储,也可以另行存储
fo = open(fname) #从CSV文件中读取问文件
ls = []
for line in fo :
line = line.replace("\n","")
ls.append(line.split(","))
fo.close()
ls = [[],[],[]] #将二维列表写入CSV文件中
f = open(fname,"w")
for item in ls :
f.write(','.join(item)+'\n')
f.close()