python调用mysql命令查询和插入表数据(python练手)

场景: 你在国内上线一款游戏成熟后, 想在美国上线该游戏, 原来的数据分析流程或者入库数据可能是根据一个字典表进行的,那么这时候你只需要将该表的国内游戏数据部分相关字典调整为美国再重新插入表即可。


本例以动物举例,类似游戏:假设将国内的北京动物园迁到美国纽约

当前表数据:



执行后:



程序清单:


#!/usr/bin/env python

import os
import re

insert_sql="""mysql example -Ne "insert into animal values('%s','%s','%s','%s');" """;
select_sql="""mysql example -Ne "select * from animal;" """;

f = os.popen(select_sql)

items=[]

for line in f:
    line=line.replace('china','American')
    line=line.replace('beijing','NewYork')
    items = line.split()
    # print "name:%s\ttype:%s\tlocate:%s\tcountry:%s" % (items[0],items[1],items[2],items[3])
    os.popen(insert_sql % (items[0],items[1],items[2],items[3]))
f.close()

print "table animal now have records:"

o = os.popen(select_sql)

for line in o:
    print line,

只是简单的测试一下结果,其实可以增强功能,比如根据命令行参数来给出替换国家、区域; 从一个文件读取进行插入(插入前进行表判定,若已存在则不再插入,若想替换旧版本可增加"--"选项进行);与程序交互替换插入等等......

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值