Python:每日一题 81
- 2017-11-27 14:37:00
- 六月
- 来源:
- http://bbs.fishc.com/thread-94760-1-1.html
- 转贴 570
题目:
写一个函数 increment_string(string)
- $def increment_string(string):
- pass
函数将有一个参数string,并且它是一个字符串如果字符串已经以数字结束,那么这个数字应该增加1。如果字符串不以数字结尾,就在字符串string结尾加一个 1 返回处理过的字符串
For example:
- >>> increment_string('This is an example!')
- #'This is an example!1
- increment_string('MSK是帅锅~6')
- #MSK是帅锅~7
- '
答案:
您是VIP用户,您可免回复查看本帖隐藏的内容
楼主解法:- import re
- def increment_string(strng):
- a = re.findall('d+
- 如果要处理的是形如 'AB99C99'这样的字符串
- 需要处理的是末尾的字符串数字99,对于之间的99不进行处理
- 匹配末尾数字,返回一个列表:
- 接下来将末尾数字+1
- 楼楼使用的是replace方法
- 因为replace是从左到右查找,所以楼楼先将字符串颠倒,使用replace后,在将字符串进行一次颠倒
- [/hide],strng)
- if a:
- str_num = a[0]
- return '%s%d' % (strng[::-1].replace(str_num,'',1)[::-1],int(str_num)+1)
- return '%s%d' % (strng,1)
如果要处理的是形如 'AB99C99'这样的字符串
需要处理的是末尾的字符串数字99,对于之间的99不进行处理
匹配末尾数字,返回一个列表:
接下来将末尾数字+1
楼楼使用的是replace方法
因为replace是从左到右查找,所以楼楼先将字符串颠倒,使用replace后,在将字符串进行一次颠倒
发表评论