首页 > 解决方案 > 如何从给定的字符串中删除字符?(python中的字符串操作)

问题描述

我有一个 string="aabbcdb",我想删除出现两次的字符。如果您使用 Counter 模块回答我会更好。PS:我希望答案是'cdb'。因为这就是我们删除两次出现的字符时剩下的内容。

标签: pythonstringcounter

解决方案


您可以使用列表作为堆栈来跟踪前一个字符,如果当前字符与前一个字符相同,则从堆栈中弹出

new_string = [string[0]]
i = 0

for char in string[1:]:
    if new_string != [] and new_string[len(new_string)-1] == char:
        new_string.pop(len(new_string)-1)
    else:
        new_string.append(char)
        i += 1

print("".join(new_string))

推荐阅读