地址:https://www.nowcoder.com/practice/637062df51674de8ba464e792d1a0ac6?tpId=37&&tqId=21319&rp=1&ru=/ta/huawei&qru=/ta/huawei/question-ranking

 

参考了别人的思路,先将字符串前后+空格或字母,这样就不用再去判断越界的情况

 

1 '''
2
3 描述
4 将一个字符中所有的整数前后加上符号“*”,其他字符保持不变。连续的数字视为一个整数。
5
6 注意:本题有多组样例输入。
7 输入描述:
8 输入一个字符串
9
10 输出描述:
11 字符中所有出现的数字前后加上符号“*”,其他字符保持不变
12
13 示例1
14 输入:
15 Jkdi234klowe90a3
16 5151
17 输出:
18 Jkdi*234*klowe*90*a*3*
19 *5151*
20
21
22 '''
23
24 while(True):
25 try:s = input()
26 except:break
27 res=''
28 s = ' '+s+' '
29 for i in range(len(s)-1):
30 res += s[i]
31 if (s[i].isdigit() is False and s[i+1].isdigit()) or (s[i].isdigit() and s[i+1].isdigit() is False):
32 res +='*'
33
34 print(res[1:])