问题描述:
- 现有一日志文件,记录内容的字符串 的格式 如下所示 A girl come in, the name is Jack, level 955;
- the name is 后面会跟着人名,随后紧跟一个逗号, 这是固定的格式。其它部分可能都是会变化的,比如,可能是下面这些
A old lady come in, the name is Mary, level 94454
A pretty boy come in, the name is Patrick, level 194
请大家实现一个函数,名为getName,如下所示
def getName(srcStr):
函数体
该函数的参数srcStr 是上面所描述的格式字符串(只处理一行),该函数需要将其中的人名获取出来,并返回
如调用 getName(‘A old lady come in, the name is Mary, level 94454’)
返回结果是 ‘Mary’
题目解析:
由题目可知名字前的’the name is '和名字后的’,‘是固定的,所以可以依次按照这两个去头去尾就可以了
def getName(srcStr):
return srcStr.split('the name is ')[-1].split(',')[0]
print(getName('A old lady come in, the name is Mary, level 94454'))
运行结果:
代码解析:
① srcStr.split(‘the name is ‘)[-1],将字符串按照’the name is ‘分割成[‘A old lady come in, ‘, ‘Mary, level 94454’],取[-1]则为’Mary, level 94454’
② 再按照’,‘进行分割,即’Mary, level 94454’.split(’,’)[0],分割成[‘Mary’, ‘level 94454’]取[0],即为’Mary’