python re.sub 不替换仅追加字符

re.sub函数常用来查找替换字符/串,而又一种需求,只是要查找字符/串,然后追加一些字符。

比如这样一个字符串:A0.378b166.5C37D59e6.541 ,我们要找到字母,然后把字母用“”号包起,再加上‘:’号和‘,’号分割。

import re
def append_Suffix(matched):
    #找到字母,把原字母替换为  ",'"+原字母 +"':"
    tempstr = matched.group()                                #取查找到的字符/串
    tempstr = ",'"+tempstr +"':"                             #格式化
    return tempstr;
inputStr = "A0.378b166.5C37D59e6.541 "
result = re.sub("[A-Za-z]",append_Suffix,inputStr)
result = "{"+result[1:len(result)]+"}"                       #拼成字典格式
result = eval(result)                                        #转成字典

print(result)
#  返回结果 :{'A': 0.378, 'b': 166.5, 'C': 37, 'D': 59, 'e': 6.541}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容