📌  相关文章
📜  代替 ‘?’在一个字符串,使得没有两个相邻的字符是相同的(1)

📅  最后修改于: 2023-12-03 15:06:39.530000             🧑  作者: Mango

以'代替 ‘?’在一个字符串,使得没有两个相邻的字符是相同的

问题概述

编写一个Python函数,以字符'?'代替字符串中的'‘?’',并确保没有两个相邻的字符是相同的。

思路分析

本问题涉及到两个主要的需要解决的部分:替换字符和检查相邻字符。

替换字符

字符串中的'‘?’'应替换为'?'。可以使用Python字符串中的replace()函数轻松实现此操作。

检查相邻字符

要避免相邻的字符是相同的,我们可以在遍历字符串时检查当前字符与上一个字符是否相同。

代码实现
def replace(str):
    new_str = str.replace('‘?’', '?')
    result = ''
    for i in range(len(new_str)):
        if i == 0 or new_str[i] != new_str[i-1]:
            result += new_str[i]
        else:
            result += '?'
    return result
使用示例
str = 'hello ‘world?’'
new_str = replace(str)
print(new_str)  # 输出:hello ?world?

以上代码可以实现将字符串中的'‘?’'替换为'?'并确保没有两个相邻的字符是相同的。