麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 編程 > Python > 正文

Python把對(duì)應(yīng)格式的csv文件轉(zhuǎn)換成字典類(lèi)型存儲(chǔ)腳本的方法

2020-02-23 06:26:29
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

該腳本是為了結(jié)合之前的編寫(xiě)的腳本,來(lái)實(shí)現(xiàn)數(shù)據(jù)的比對(duì)模塊,實(shí)現(xiàn)數(shù)據(jù)的自動(dòng)化!由于數(shù)據(jù)格式是定死的,該代碼只做參考,有什么問(wèn)題可以私信我!

CSV的數(shù)據(jù)格式截圖如下:

Python把對(duì)應(yīng)格式的csv文件轉(zhuǎn)換成字典類(lèi)型存儲(chǔ)腳本

readDataToDic.py源代碼如下:

#coding=utf8import csv '''該模塊的主要功能,是根據(jù)已有的csv文件,通過(guò)readDataToDicl函數(shù),把csv中對(duì)應(yīng)的部分,寫(xiě)入字典中,每個(gè)字典當(dāng)當(dāng)作一條json數(shù)據(jù)'''class GenExceptData(object):  def __init__(self):    try:      #用來(lái)存放json數(shù)據(jù)的字典      self.dataDic={}      #存放csv中讀取的數(shù)據(jù)      self.mdbuffer=[]      #打開(kāi)csv文件,設(shè)置讀的權(quán)限      csvHand=open("20170510174450.csv","r")      #創(chuàng)建讀取csv文件句柄      readcsv=csv.reader(csvHand)      #把csv的數(shù)據(jù)讀取到mdbuffer中      for row in readcsv:          self.mdbuffer.append(row)       #把數(shù)據(jù)穿件為為字典類(lèi)型的      self.readDataToDicl()      #保存文件    except Exception,e:      print "Read Excel error:",e    finally:      #關(guān)閉csv文件      csvHand.close()   def readDataToDicl(self):    try:      #獲取mdbuffer中的元素個(gè)數(shù)      rowNumber=len(self.mdbuffer)      #設(shè)置當(dāng)前行號(hào)      currentrow=1      #設(shè)置json數(shù)據(jù)的屬性值      propertyJson={}      #讀取列表中的元素         for row in range(1,rowNumber):        #創(chuàng)建一個(gè)臨時(shí)變量用來(lái)存取一次循環(huán)的屬性鍵值        temp={}        #獲取列表中一個(gè)元素        item=self.mdbuffer[row]        #獲取當(dāng)前元素,當(dāng)前元素代表的是每個(gè)        #事件起始的位置        currentItem=self.mdbuffer[currentrow]        #獲取serviceId并進(jìn)行解碼        serviceId= currentItem[2].decode("gbk")        #獲取屬性并進(jìn)行解碼,把解碼的值存入propertyName        propertyName=item[3].decode("gbk")        #獲取屬性值并進(jìn)行解碼,把解碼的值存入propertyValue        propertyValue=item[4].decode("gbk")        #判斷埋點(diǎn)事件與serviceId是否相等        if item[0]==currentItem[0] and item[2]==currentItem[2]:          #把serviceId方式字典propertyJson中          propertyJson["serviceId"]=serviceId           #把屬性/值對(duì)放入temp字典中                                   temp[propertyName]=propertyValue          #調(diào)用字典的update函數(shù),把temp中的鍵值對(duì)          #添加到 propertyJson字典中          propertyJson.update(temp)          #使用continue,如果為if條件為true則循環(huán)執(zhí)行if語(yǔ)句模塊          continue         else:          #把行號(hào)設(shè)置為當(dāng)前行          currentrow=row           #把當(dāng)前的屬性解碼放入propertyName                    propertyName=currentItem[3].decode("gbk")          #把當(dāng)前的屬性值解碼放入propertyName          propertyValue=currentItem[4].decode("gbk")          #把serviceId方式字典propertyJson中           propertyJson["serviceId"]=serviceId            #把屬性/值對(duì)放入propertyJson字典中           propertyJson[propertyName]=propertyValue           #輸入字典中的值,并對(duì)值進(jìn)行解碼          #該部分用于調(diào)試使用           for key,val in propertyJson.items():            print key,"=",val.encode("utf8")          print "#"*50           #為下次做準(zhǔn)備,清除字典中的元素          propertyJson.clear()                   except Exception,e:      print "Reading Data TO Dic Error:",e    def test():  GenExceptData()  if __name__=="__main__":  test()            
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 日韩精品久久久 | 欧美一级无毛 | 午夜视频免费在线观看 | 国产精品av久久久久久久久久 | 国产精品视频一区二区三区四区五区 | 国产精品区一区二区三区 | 欧美一级高潮片免费的 | 久久久大片 | 九九热国产在线 | 久久久久久久久久久久久久久久久久 | 91专区在线观看 | 一级毛片真人免费播放视频 | 91短视频版高清在线观看免费 | 国产午夜精品一区二区三区嫩草 | 手机黄色小视频 | 2018亚洲男人天堂 | 午夜激情视频网站 | 免费黄色入口 | 日本爽快片100色毛片视频 | 免费国产在线观看 | 久久羞羞视频 | h视频免费观看 | 国产成人77亚洲精品www | 红杏亚洲影院一区二区三区 | 手机视频在线播放 | 欧美日韩国产一区二区三区在线观看 | 黄网在线| 九色国产 | 日韩不卡一区二区 | 日韩视频―中文字幕 | 密室逃脱第一季免费观看完整在线 | 精品一区二区久久久久久按摩 | 99视频有精品视频高清 | 全黄裸片武则天艳史 | 亚洲成在人 | 亚洲第一页综合 | 久久不射电影网 | 国产精品久久久久久久av三级 | 国产精品久久久久久久久久 | 国产正在播放 | 黄色大片在线免费看 |