Python把对应格式的csv文件转换成字典类型存储脚本的方法
更新时间:2019年02月12日 10:11:44 作者:坏蛋是我
今天小编就为大家分享一篇Python把对应格式的csv文件转换成字典类型存储脚本的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
该脚本是为了结合之前的编写的脚本,来实现数据的比对模块,实现数据的自动化!由于数据格式是定死的,该代码只做参考,有什么问题可以私信我!
CSV的数据格式截图如下:

readDataToDic.py源代码如下:
#coding=utf8
import csv
'''
该模块的主要功能,是根据已有的csv文件,
通过readDataToDicl函数,把csv中对应的部分,
写入字典中,每个字典当当作一条json数据
'''
class GenExceptData(object):
def __init__(self):
try:
#用来存放json数据的字典
self.dataDic={}
#存放csv中读取的数据
self.mdbuffer=[]
#打开csv文件,设置读的权限
csvHand=open("20170510174450.csv","r")
#创建读取csv文件句柄
readcsv=csv.reader(csvHand)
#把csv的数据读取到mdbuffer中
for row in readcsv:
self.mdbuffer.append(row)
#把数据穿件为为字典类型的
self.readDataToDicl()
#保存文件
except Exception,e:
print "Read Excel error:",e
finally:
#关闭csv文件
csvHand.close()
def readDataToDicl(self):
try:
#获取mdbuffer中的元素个数
rowNumber=len(self.mdbuffer)
#设置当前行号
currentrow=1
#设置json数据的属性值
propertyJson={}
#读取列表中的元素
for row in range(1,rowNumber):
#创建一个临时变量用来存取一次循环的属性键值
temp={}
#获取列表中一个元素
item=self.mdbuffer[row]
#获取当前元素,当前元素代表的是每个
#事件起始的位置
currentItem=self.mdbuffer[currentrow]
#获取serviceId并进行解码
serviceId= currentItem[2].decode("gbk")
#获取属性并进行解码,把解码的值存入propertyName
propertyName=item[3].decode("gbk")
#获取属性值并进行解码,把解码的值存入propertyValue
propertyValue=item[4].decode("gbk")
#判断埋点事件与serviceId是否相等
if item[0]==currentItem[0] and item[2]==currentItem[2]:
#把serviceId方式字典propertyJson中
propertyJson["serviceId"]=serviceId
#把属性/值对放入temp字典中
temp[propertyName]=propertyValue
#调用字典的update函数,把temp中的键值对
#添加到 propertyJson字典中
propertyJson.update(temp)
#使用continue,如果为if条件为true则循环执行if语句模块
continue
else:
#把行号设置为当前行
currentrow=row
#把当前的属性解码放入propertyName
propertyName=currentItem[3].decode("gbk")
#把当前的属性值解码放入propertyName
propertyValue=currentItem[4].decode("gbk")
#把serviceId方式字典propertyJson中
propertyJson["serviceId"]=serviceId
#把属性/值对放入propertyJson字典中
propertyJson[propertyName]=propertyValue
#输入字典中的值,并对值进行解码
#该部分用于调试使用
for key,val in propertyJson.items():
print key,"=",val.encode("utf8")
print "#"*50
#为下次做准备,清除字典中的元素
propertyJson.clear()
except Exception,e:
print "Reading Data TO Dic Error:",e
def test():
GenExceptData()
if __name__=="__main__":
test()
运行结果图:

以上这篇Python把对应格式的csv文件转换成字典类型存储脚本的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Python生成验证码、计算具体日期是一年中的第几天实例代码详解
这篇文章主要介绍了Python生成验证码、计算具体日期是一年中的第几天,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-10-10
Python实现图片指定位置加图片水印(附Pyinstaller打包exe)
这篇文章主要介绍了Python实现图片指定位置加图片水印,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2021-03-03
Python使用PyPDF2 Pillow库来将PDF文件转图片
这篇文章主要为大家介绍了Python使用PyPDF2 Pillow库来将PDF文件转图片示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-08-08


最新评论