免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3675 | 回复: 4

如果處理代碼錯誤的部分 [复制链接]

论坛徽章:
0
发表于 2013-11-15 14:56 |显示全部楼层
本帖最后由 play9091 于 2013-11-15 15:01 编辑

我寫了一段代碼……

datagroup = re.search('UtranCell=%s.*'%sline[3],open('database/%s.log'%sline[2]).read()).group().split()

但是有可能,會找不到想要找的資料。這時的要怎麼樣子去避免跳出錯,讓它找不到還是會繼續往下執行??

不知道用 Try 能不能實現??

try:
     datagroup = re.search('UtranCell=%s.*'%sline[3],open('database/%s.log'%sline[2]).read()).group().split()
except:
     print "name error:

论坛徽章:
1
天蝎座
日期:2013-10-23 21:11:03
发表于 2013-11-15 16:00 |显示全部楼层
本帖最后由 openspace 于 2013-11-15 16:00 编辑
play9091 发表于 2013-11-15 14:56
我寫了一段代碼……

datagroup = re.search('UtranCell=%s.*'%sline[3],open('database/%s.log'%sline[2 ...


这个应该直接检测是否为空结果集就可以了
search(pattern, string, flags=0)
    Scan through string looking for a match to the pattern, returning
    a match object, or None if no match was found.
不需要 try

论坛徽章:
0
发表于 2013-11-15 17:43 |显示全部楼层
後來還是決定用 TRY 把它當 IF 用就是了!可以達成我要的效果!

论坛徽章:
0
发表于 2013-11-15 21:35 |显示全部楼层
这种我从来都是

  1. obj = re.search('UtranCell=%s.*'%sline[3],open('database/%s.log'%sline[2]).read())
  2. if obj:
  3.     datagroup = obj.group().split()
复制代码
比较清晰

论坛徽章:
0
发表于 2013-11-15 22:05 |显示全部楼层
回复 4# laike9m


    喔!這一招也不錯…… 看起來很清析……
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP