替换字符串中的子串

通过一个简单的任务实现这样的一个任务: 当给定一个字符串,通过查询一个替换字典,将字符串中被标记的子字符串替换掉!

 实现的方法如下:

 1 def expand(format, d, marker='"', safe=False):
 2     if safe:
 3         def lookup(w): return d.get(w, w.join(marker*2))
 4     else:
 5         def lookup(w): return d[w]
 6     parts = format.split(marker)
 7     parts[1::2] = map(lookup,parts[1::2])
 8     return ''.join(parts)
 9 
10 if __name__ == '__main__':
11     print expand('just "a" test', {'a':'one'})

  通过对特定的分隔符进行切片后,利用map函数进行列表的映射,将需要替换的子字符串进行替换。输出结果如下:

 just one test.

posted @ 2015-01-18 22:19  Kirago  阅读(505)  评论(0)    收藏  举报