Python入门(九):数据处理

数据处理

数据处理包括数据的表示、存储及相关处理。

一维数据的处理

数据表示

一维数据是最简单的数据组织类型,由于是线性结构,在Python语言中主要采用列表形式表示。如:

ls = ["小学,"初中","高中","大学"]

数据存储

一维数据的文件存储有多种方式,总体思路是采用特殊字符分隔各数据
常用存储方法包括以下四种:

  1. 采用空格分隔元素:小学 初中 高中 大学
  2. 采用逗号分隔元素:小学,初中,高中,大学
  3. 采用换行分隔元素:
小学
初中
高中
大学
  1. 其他符号分隔元素:小学;初中;高中;大学

其中最常用的是逗号分隔元素的存储方法,其存储格式叫作CSV格式(Comma-Seperated Values,即逗号分隔值)。它是一种通用的、相对简单的文件格式,在商业和科学上广泛应用,一般采用.csv为扩展名。
列表对象输出为CSV格式文件方法如下,采用字符串的join()方法最为方便。

ls = ["小学","初中","高中","大学"]
f = open("city.csv","w")
f.write(",".join(ls))
f.close()

数据处理

对一维数据进行处理首先需要从CSV格式文件读入一维数据,并将其表示为列表对象。
需要注意的是,从CSV文件中获得内容时,最后一个元素后面包含了一个换行符("\n").对于数据的表达和使用来说,这个换行符是多余的,需要采用字符串的strip()方法去掉数据尾部的换行符,然后使用split()方法以逗号进行分割。

f = open("city.csv","r")
ls = f.read().strip("\n").split(",")
f.close()
print(ls)

由于一维数据采用列表形式表示,所以其处理与列表类型操作一致

二位数据的处理

数据表示

二维数据由多个一维数据构成,可以看做是一维数据的组合形式。因此,
二维数据可以采用二维列表来表示,即列表的每个元素对应二维数据的一行,这个元素本身也是列表类型,其内部各元素对应这行中的各列值

ls = [["学历","小学","初中","高中","大学"],
["学费",0,0,1000,5000]]

数据存储

二维数据由一维数据组成,用CSV文件格式存储。
CSV文件的每一行是一维数据,整个CSV文件是一个二维数据
二维数据存储为CSV格式,需要将二维列表对象写入CSV格式文件以及将CSV格式读入成二维列表对象。其方法如下:

#ls为二维列表,此处省略
f = open("test_2.csv","w+")
for row in ls: #采用遍历循环方法逐行读入
	f.write(",".join(row)+"\n")
f.close()

数据处理

对二维数据进行处理首先需要从CSV格式文件中读入二维数据,并将其表示成二维列表对象。

f = open("test_2.csv","r")
ls = [ ]
for line in f:
	ls.append(line.strip("\n").split(",")
f.close()
print(ls)

二维数据处理等同于二维列表的操作。与一维列表不同,二维列表一般需要借助循环遍历实现对每个数据的处理,方法如下:

for row in ls:
	for item in row:
		<对第 row 行 第 item 列元素进行处理>
for row in ls:
	line = " "
	for item in row:
		line += "{:10}\t".format(item)
		print(line)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值