复制粘贴功能的Python程序

yipeiwu_com4年前Python实例

今天因为给BeauBeau提供的抽奖号码做SQL文件,一开始收到ZIP文件解开压缩之后被吓到了——29个CSV文件,每个文件保存了1000个奖券ID和号码-_-!

照上次一样,打开每个CSV文件做先做单独的SQL文件,每个SQL中有1000条插入语句,随后将29个文件的所有SQL语句都复制粘贴到同一个总的SQL文件中。

CSV文件中的结构是“ID,NUMBER”的结构,其中ID是7位数字,NUMBER是11位数字。这样用正则式来进行捕捉的时候就比较方便了,在Eclipse的查找/替换功能中所使用的正则式就是“(\d{7}),(\d{11})”,进行替换的文本内容就是“INSERT INTO cards VALUES ('$1','$2',now());”。使用这种方法对29个CSV文件中的内容进行替换。

import sys, os  
def readFile(filename):  
    file=open(filename, "r")  
    s=file.read().strip()  
    file.close()  
    return s  

def writeFile(filename, files):  
    content=[]  
    for f in files:  
        print "reading file ' %s ' " % f  
        s=readFile(f)  
        print "read file ' %s ' completed" % f  
        content.append(s)  
    print "writing file ' %s ' " % filename  
    file=open(filename, "w")  
    file.write("\n/*-----This is a seperating line.-----*/\n".join(content))  
    file.close()  
    print "write file ' %s ' completed" % filename  


filters=['.txt']  
fullpath=os.getcwd();  

print "opening directory: ' %s ' " % fullpath  

sys.path.append(fullpath)  
files = os.listdir(fullpath)  
files =[f for f in files if os.path.splitext(f)[1].lower() in filters]  
writeFile("beaunet_be_card.sql", files)

程序的功能很简单,这也是我在Python的道路上迈出的第一步。

有时间的时候重写这段代码,加入正则替换功能
                       

相关文章

tensorflow模型继续训练 fineturn实例

tensorflow模型继续训练 fineturn实例

解决tensoflow如何在已训练模型上继续训练fineturn的问题。训练代码任务描述: x = 3.0, y = 100.0, 运算公式 x×W+b = y,求 W和b的最优解。# -*...

使用Python实现Wake On Lan远程开机功能

Wake-On-LAN简称WOL,是一种电源管理功能;如果存在网络活动,则允许设备将操作系统从待机或休眠模式中唤醒。许多主板厂商支持IBM提出的网络唤醒标准。该标准允许网络管理员远程打开P...

python动态文本进度条的实例代码

python动态文本进度条的实例代码

如何实现动态单行刷新,答案是——覆盖但是怎么实现覆盖呢关键在于不换行而且能回退到开始位置那么就要用到 \r这个东西就是让光标回退到当前行初始位置记得不能让换行上码#文本进度条.p...

python翻译软件实现代码(使用google api完成)

# -*- coding: utf-8 -*-  import httplib from urllib ...

tensorflow模型保存、加载之变量重命名实例

话不多说,干就完了。变量重命名的用处?简单定义:简单来说就是将模型A中的参数parameter_A赋给模型B中的parameter_B使用场景:当需要使用已经训练好的模型参数,尤其是使用别...