最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時(shí)間:2019年02月12日 10:11:44   作者:壞蛋是我  
今天小編就為大家分享一篇Python把對應(yīng)格式的csv文件轉(zhuǎn)換成字典類型存儲腳本的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧

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

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

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

readDataToDic.py源代碼如下:

#coding=utf8
import csv 
'''
該模塊的主要功能,是根據(jù)已有的csv文件,
通過readDataToDicl函數(shù),把csv中對應(yīng)的部分,
寫入字典中,每個(gè)字典當(dāng)當(dāng)作一條json數(shù)據(jù)
'''
class GenExceptData(object):
  def __init__(self):
    try:
      #用來存放json數(shù)據(jù)的字典
      self.dataDic={}
      #存放csv中讀取的數(shù)據(jù)
      self.mdbuffer=[]
      #打開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ù)穿件為為字典類型的
      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)前行號
      currentrow=1
      #設(shè)置json數(shù)據(jù)的屬性值
      propertyJson={}
      #讀取列表中的元素   
      for row in range(1,rowNumber):
        #創(chuàng)建一個(gè)臨時(shí)變量用來存取一次循環(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 
          #把屬性/值對放入temp字典中                         
          temp[propertyName]=propertyValue
          #調(diào)用字典的update函數(shù),把temp中的鍵值對
          #添加到 propertyJson字典中
          propertyJson.update(temp)
          #使用continue,如果為if條件為true則循環(huán)執(zhí)行if語句模塊
          continue 
        else:
          #把行號設(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  
          #把屬性/值對放入propertyJson字典中 
          propertyJson[propertyName]=propertyValue 
          #輸入字典中的值,并對值進(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()

運(yùn)行結(jié)果圖:

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

以上這篇Python把對應(yīng)格式的csv文件轉(zhuǎn)換成字典類型存儲腳本的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

页游| 宜君县| 越西县| 文化| 北流市| 梅州市| 洛隆县| 凤城市| 高邑县| 彭泽县| 沽源县| 泰兴市| 丰镇市| 烟台市| 横峰县| 孙吴县| 嘉善县| 民乐县| 哈尔滨市| 固始县| 冀州市| 青田县| 海兴县| 广东省| 棋牌| 阿坝县| 瑞安市| 新干县| 淳化县| 吴旗县| 宁远县| 临洮县| 辽源市| 阿尔山市| 巴彦淖尔市| 抚远县| 时尚| 朝阳市| 屏东县| 定边县| 新巴尔虎左旗|