免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: zl624867243
打印 上一主题 下一主题

文本匹配和比较 [复制链接]

论坛徽章:
22
处女座
日期:2014-10-11 13:33:292015亚冠之塔什干火车头
日期:2015-07-20 19:59:042015亚冠之塔什干火车头
日期:2015-07-26 10:59:31程序设计版块每日发帖之星
日期:2015-08-05 06:20:00每日论坛发贴之星
日期:2015-08-05 06:20:00程序设计版块每日发帖之星
日期:2015-08-07 06:20:00每日论坛发贴之星
日期:2015-08-07 06:20:002015亚冠之阿尔纳斯尔
日期:2015-10-01 15:23:28白银圣斗士
日期:2015-12-07 17:17:06操作系统版块每日发帖之星
日期:2015-12-27 06:20:002015亚冠之广州富力
日期:2015-07-08 15:48:31程序设计版块每日发帖之星
日期:2015-06-11 22:20:00
11 [报告]
发表于 2016-11-29 22:56 |只看该作者
  1. #/usr/bin/env python
  2. # -*- coding: utf-8 -*-

  3. import sys,fileinput,re
  4. dict_pre={}
  5. dict_prod={}

  6. for line in fileinput.input(sys.argv[1:]):
  7.         lst=re.split('\|',line.strip('\n'))
  8.         if lst[-1]=="pre":
  9.                 dict_pre[lst[0]]=lst[1]
  10.         elif lst[-1]=="prod":
  11.                 dict_prod[lst[0]]=lst[1]


  12. set1=set([k for k in dict_pre])
  13. set2=set([k for k in dict_prod])
  14. for k in set1 & set2:
  15.         if dict_pre[k]==dict_prod[k]:
  16.                 print "%s|%s|pre 分支相同\n%s|%s|prod" %(k,dict_pre[k],k,dict_prod[k])
  17.         else:
  18.                 print "%s|%s|pre 分支不同\n%s|%s|prod" %(k,dict_pre[k],k,dict_prod[k])
  19. for k in set1-set2:
  20.         print "%s|%s|pre pre环境有,prod环境无" %(k,dict_pre[k])
  21. for k in set2-set1:
  22.         print "%s|%s|prod prod环境有,pre环境无" %(k,dict_prod[k])
复制代码



$ python test.py file
sms|qc_app_v1.0_dev_xxg_1121|pre 分支相同
sms|qc_app_v1.0_dev_xxg_1121|prod
place|qc_app_place_release|pre 分支相同
place|qc_app_place_release|prod
stadium|qc_app_v1.0_dev|pre 分支不同
stadium|qc_app_v1.1_dev|prod
scheduler|qc_app_v1.0_dev|pre pre环境有,prod环境无

论坛徽章:
2
综合交流区版块每日发帖之星
日期:2016-07-06 06:20:00综合交流区版块每日发帖之星
日期:2016-08-16 06:20:00
12 [报告]
发表于 2016-11-30 12:52 |只看该作者
回复 9# zxy877298415

论坛徽章:
8
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015小元宵徽章
日期:2015-03-06 15:58:18每日论坛发贴之星
日期:2015-06-08 22:20:00每日论坛发贴之星
日期:2015-06-08 22:20:00操作系统版块每日发帖之星
日期:2015-06-14 22:20:00数据库技术版块每日发帖之星
日期:2015-11-09 06:20:00数据库技术版块每日发帖之星
日期:2016-02-22 06:20:0015-16赛季CBA联赛之上海
日期:2017-01-01 23:58:53
13 [报告]
发表于 2016-11-30 22:28 |只看该作者
回复 11# 聆雨淋夜

不错 用集合的概念去处理 包含关系 容易理解。

论坛徽章:
0
14 [报告]
发表于 2016-12-13 18:19 |只看该作者
回复 9# zxy877298415


请问,使用open(“文件名”)写的脚本必须要定义文件名,而不能应用于任意文件,有什么方法可以让写的脚本应用于任意文件而不是特定文件呢?
例如f = open("a.txt")
但当要执行的文件名为b.txt时就得写成
f = open("b.txt")
怎样可以不用这样子,谢谢大家
例如执行的时候 python 脚本.pl 打开的文件.txt
python


论坛徽章:
30
申猴
日期:2014-04-10 09:43:532015年亚洲杯纪念徽章
日期:2015-03-20 14:40:232015亚冠之阿尔纳斯尔
日期:2015-06-02 18:59:042015亚冠之阿尔希拉尔
日期:2015-06-30 15:22:572015亚冠之大阪钢巴
日期:2015-07-20 10:44:332015亚冠之阿尔纳斯尔
日期:2015-10-28 14:57:5215-16赛季CBA联赛之新疆
日期:2015-12-25 10:18:45黑曼巴
日期:2016-06-26 21:39:5315-16赛季CBA联赛之山西
日期:2016-07-25 21:54:2715-16赛季CBA联赛之北京
日期:2016-10-27 12:07:2315-16赛季CBA联赛之八一
日期:2017-07-07 16:39:0915-16赛季CBA联赛之吉林
日期:2017-09-04 12:14:43
15 [报告]
发表于 2016-12-13 20:27 |只看该作者
回复 14# little_joe


11楼就是用的参数的方式,可以参考一下!

论坛徽章:
0
16 [报告]
发表于 2016-12-16 12:59 |只看该作者
回复 15# zxy877298415
好的,谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP