Python 编程题目一 字符串的切割

时间:2025-03-28 08:53:50

要求:

现有一个游戏系统的日志文件,记录内容的字符串 的格式 如下所示

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,如下所示

  1. def getName(srcStr):
  2. 函数体

该函数的参数srcStr 是上面所描述的格式字符串(只处理一行),该函数需要将其中的人名获取出来,并返回

比如 调用 getName('A old lady come in, the name is Mary, level 94454')

返回结果应该是 'Mary'

  1. def getName(srcStr):
  2. info = ('the name is ')[1].split(',')[0].strip()
  3. print(info)
  4. return info
  5. srcStr = 'A girl come in, the name is Jack, level 955;'
  6. getName(srcStr)

 

如果这是个很多行的日志,该怎么处理呢:

  1. def getName(srcStr):
  2. infoline=('\n') # 以换行符为切割点
  3. for info in infoline:
  4. if info != '' : # 判断是否为最后一行,不然会出错'list index out of range'
  5. info = ('the name is ')[1].split(',')[0].strip()
  6. print(info)
  7. return
  8. srcStr = '''
  9. A girl come in, the name is Jack, level 955;
  10. A old lady come in, the name is Mary, level 94454;
  11. A pretty boy come in, the name is Patrick, level 194;
  12. '''
  13. getName(srcStr)