Python字典在实际工作中的应用

应用背景

     在工作中遇到要为现有的数据库表A添加大量数据,该数据与A表中某类数据相同,但是ID不同,并且同时增加关联该表的其他表格(B、C表)。


解决方法

           解决思路: 通过Python字典类型变量,转换关联表中原数据的ID为对应新增数据的ID。

 

        首先,根据条件找出A表中要添加的数据,可以下载这些数据到本地(xml文件或cvs文件),用Excel打开,对应这些数据的ID新曾一列数据ID,并把这两列数据复制到一个文本文件中。这两列数据在Python程序中存储到字典变量中。

        其次,根据表之间关联关系,找出B表中要增加的数据,同样下载到本地,复制ID到文本文件中,该ID用于转换新增ID。

        最后,通过下面程序生成对应新增的ID,保存到文件中,然后上传数据到数据库。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

dict = {}
#读取对应的ID,并存储为字典类型
file = open('C:\Users\Administrator\Desktop\idExchange.txt')
lines = file.readlines()
for line in lines:
    #print line
    #注意ID位置,此处新增ID在前,对应原数据ID在后
    dict.setdefault(line.split("\t")[1].split("\n")[0],line.split("\t")[0])
print dict

#读取要转换的ID文件,把转换后的ID写入新文件
file2 = open('C:\Users\Administrator\Desktop\price.txt')
lines2 = file2.readlines()
file3 = open('C:\Users\Administrator\Desktop\priceNj.txt','w')
#lines3 = file3.readlines()
for line in lines2:
    #print dict[line.split('\n')[0]]
    file3.writelines(dict[line.split('\n')[0]])
    file3.write('\n')
print "》》》》写入完成"

file.close()
file2.close()
file3.close()

         其他关联的表格以同样的方法增加数据,当然你也可以直接在Excel表格中操作,而不必复制ID到文本文件中。这就需要使用第三方模块库来操作,有兴趣的同学可以试试。


       程序中所用文件下载地址:http://download.csdn.net/detail/u010657094/9621274





  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值