将字符串s='ab34aa243dd78eww89' 处理为 '**34**243**78***89',然后对数字求和,结果为'**7**9**15***17
Posted xiaoxiao075
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将字符串s='ab34aa243dd78eww89' 处理为 '**34**243**78***89',然后对数字求和,结果为'**7**9**15***17相关的知识,希望对你有一定的参考价值。
s=‘ab34aa243dd78eww89‘
#s=‘ab34aa000dd78eww89‘
#方法1:
result=‘‘ for i in s: if i.isalpha(): result+=‘*‘ else: result+=i print(result) i=0 temp=0 ss=‘‘ #**34**243**78***89 while i<len(result): if result[i].isdigit(): temp+=int(result[i]) else: if temp!=0: ss+=str(temp) ss+=result[i] temp=0 i+=1 ss+=str(temp) print(ss)
#方法2 ,如果**之间的数字都为0 上述方法可能有问题,需要按此方法优化;
#s=‘ab34aa243dd78eww89‘ s=‘ab34aa000dd78eww89‘ ss=‘‘ temp=‘‘ for i in s: if i>=‘a‘and i<=‘z‘: if temp!=‘‘: ss+=str(sum(map(int,temp))) ss+=‘*‘ temp=‘‘ else: temp+=i ss+=str(sum(map(int,temp))) print(ss)
以上是关于将字符串s='ab34aa243dd78eww89' 处理为 '**34**243**78***89',然后对数字求和,结果为'**7**9**15***17的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode 451. 根据字符出现频率排序 / 645. 错误的集合 / 726. 原子的数量 / NC52 括号序列 / NC102 最近公共祖先 / NC78 反转链表