通过一个简单的任务实现这样的一个任务: 当给定一个字符串,通过查询一个替换字典,将字符串中被标记的子字符串替换掉!
实现的方法如下:
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.