📅  最后修改于: 2023-12-03 15:11:20.227000             🧑  作者: Mango
本程序可接收一个由给定字符组成的字符串,并生成一个没有任何连续重复字符的新字符串。以下是程序的代码:
def no_repeat(input_string: str) -> str:
new_str = input_string[0]
for i in range(1, len(input_string)):
if input_string[i] != input_string[i-1]:
new_str += input_string[i]
return new_str
print(no_repeat("aabbcdeefffg")) # 输出 'abcdefg'
该程序利用了Python中字符串可以按下标访问的特点,逐个遍历输入的字符串,判断当前字符是否与前一个字符相同,如果不相同则将其加入新字符串中。最后返回新字符串。
以下是程序的运行示例:
print(no_repeat("aabbcdeefffg")) # 输出 'abcdefg'
print(no_repeat("aabbccddeeff")) # 输出 'abcdef'
值得注意的是,该程序并没有对输入字符串中是否存在给定字符的限制,因此如果输入字符串包含了非给定字符,则会在输出字符串中保留。如果需要在程序中添加这样的限制,请在函数内部添加相关判断。