a替换函数 | 豆包MarsCode AI刷题

57 阅读2分钟

问题描述

给定一个字符串$s$,编写一个函数,将字符串中的小写字母a替换成"100%"并返回替换后的字符串

第一种方法

解题思路

  1. 理解问题: 我们需要将字符串中的所有小写字母'a'替换为'%100'

  2. 选择数据结构: 字符串是不可变的,因此我们可以直接使用字符串操作方法。

  3. 算法步骤: 使用str.replace()方法将字符串中的'a'替换为'%100'。 返回替换后的字符串。

代码部分

def solution(s: str) -> str:
    # 使用replace方法将字符串中的'a'替换为'%100'
    result = s.replace('a', '%100')  # 这里使用replace方法进行替换
    # 返回替换后的字符串
    return result

if __name__ == '__main__':
    print(solution(s="abcdwa") == '%100bcdw%100')
    print(solution(s="banana") == 'b%100n%100n%100')
    print(solution(s="apple") == '%100pple')

提示

  • str.replace(old, new)方法会将字符串中所有的old替换为new
  • solution函数中,直接调用s.replace('a', '%100')即可完成替换。

第二种方法

  1. 解题思路 理解问题:我们需要将字符串中的所有小写字母'a'替换为'%100'

  2. 选择数据结构: 字符串是不可变的,因此我们可以使用列表来存储处理后的字符。

  3. 算法步骤

  • 初始化一个空列表来存储结果。
  • 遍历字符串中的每个字符。
  • 如果字符是'a',则将'%100'添加到结果列表中。
  • 否则,将字符本身添加到结果列表中。
  • 最后,将结果列表转换为字符串并返回。

代码部分

def solution(s: str) -> str:
    # 初始化一个空列表来存储结果
    result = []
    
    # 遍历字符串中的每个字符
    for char in s:
        # 如果字符是'a',则将'%100'添加到结果列表中
        if char == 'a':
            result.append('%100')
        else:
            # 否则,将字符本身添加到结果列表中
            result.append(char)
    
    # 将结果列表转换为字符串并返回
    return ''.join(result)

if __name__ == '__main__':
    print(solution(s="abcdwa") == '%100bcdw%100')
    print(solution(s="banana") == 'b%100n%100n%100')
    print(solution(s="apple") == '%100pple')

提示

与第一种方法不同的是此方法并没有使用str.replace(),而是创建一个空列表,并进行循环遍历每个字符,代码的结构和长度相比第一种方法多的多,当然还有许多种解题方法这里提供了两种简单的办法。

希望本篇文章对您有所帮助