本站首页    管理页面    写新日志    退出


«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31


公告

戒除浮躁,读好书,交益友


我的分类(专题)

日志更新

最新评论

留言板

链接

Blog信息
blog名称:邢红瑞的blog
日志总数:523
评论数量:1142
留言数量:0
访问次数:9699885
建立时间:2004年12月20日




[脚本语言]python处理文件 
原创空间,  软件技术,  电脑与网络

邢红瑞 发表于 2007/1/15 16:09:34

python处理文件其实python处理文本的好像不如perl,但是python用的多了要把一个文件转为xml文件,php内容'arp_table' => 'ip,mac,if_name' ,'interface_sub' => 'name,type' ,'default_gate' => 'gate_ip,oif' ,'arp_mac' => 'name',  'bridge_interface' => 'name,group_num',  'loop_interface' => 'name',转为<arp_table>    <pk>ip</pk>    <pk>mac</pk>    <pk>if_name</pk></arp_table><interface_sub>    <pk>name</pk>    <pk>type</pk></interface_sub><default_gate>    <pk>gate_ip</pk>    <pk>oif</pk></default_gate><arp_mac>    <pk>name</pk></arp_mac><bridge_interface>    <pk>name</pk>    <pk>group_num</pk></bridge_interface><loop_interface>    <pk>name</pk></loop_interface>python代码很简单#!/usr/bin/env pythonimport string,reimport   sys sys.stdout=open('xmldb.txt','w') filename="da.txt"try:   fp = open(filename)   pat = re.compile("'.+?'")      for line in fp.readlines():               m=re.findall(pat,line)        flag=0        for n in m:            n=n.replace("'","")            if(flag==0):               print "<"+n+">"               flag=flag+1            else:              p=n.split(",")              for q in  p:                 print "    <pk>"+q+"</pk>"        back=m[0]        back=back.replace("'","")              print "</"+back+">"                  del line except IOError, error:   print "problem while reading %s: %s" % (filename, error) 注意pat = re.compile("'.+?'")这里是.+?非贪婪算法,'arp_table' => 'ip,mac,if_name'得到'arp_table' 和'ip,mac,if_name',如果是.*是贪婪算法,是'arp_table' => 'ip,mac,if_name'


阅读全文(4522) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.293 second(s), page refreshed 144766503 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号