5

我有一个程序可以打印出一些用'p's 代替小数点的数据,以及一些其他信息。我试图用 s 替换'p's '.'

程序的示例输出:

out_info = 'value is approximately 34p55'

我想将其更改为:

out_info_updated = 'value is approximately 34.55'

我尝试使用re.search提取数字并将其替换为p.但将其重新插入就成了一个问题。我无法弄清楚要使用的那种模式re.sub可以完成这项工作。有人可以帮忙吗?

4

1 回答 1

14

干得好:

import re
out_info = "value is approximately 34p55"
re.sub(r'(\d+)p(\d+)', r'\1.\2', out_info)

输出是:

'value is approximately 34.55'

这就是说“查找一个或多个数字,然后是 a p,然后是一个或多个数字,然后将所有这些替换为第一组数字,然后是 a .,然后是第二组数字。”

于 2013-05-08T06:58:11.613 回答