当前位置: 首页 > 图文教程 > 脚本技术 > Python > 复制粘贴功能的Python程序

Python
python 正则式使用心得
python 正则式 概述及常用字符
用python分割TXT文件成4K的TXT文件
python getopt 参数处理小示例
python 运算符 供重载参考
python 查找文件夹下所有文件 实现代码
打印出python 当前全局变量和入口参数的所有属性
python 解析html之BeautifulSoup
python self,cls,decorator的理解
python 自动提交和抓取网页
python 域名分析工具实现代码
Python 文件重命名工具代码
python 提取文件的小程序
Python 网络编程说明
python 简易计算器程序,代码就几行
python encode和decode的妙用
Python开发编码规范
学习python (1)
学习python (2)
简明 Python 基础学习教程

复制粘贴功能的Python程序


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 192 ::
收藏到网摘: n/a

接下来,由于我觉得手动复制粘贴这29000条插入语句实在是太痛苦了,所以打算用Python来完成这项工作。这是我第一次自己动手写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的道路上迈出的第一步。
有时间的时候重写这段代码,加入正则替换功能