python - 如何从给定的字符串中删除字符?(python中的字符串操作)
问题描述
我有一个 string="aabbcdb",我想删除出现两次的字符。如果您使用 Counter 模块回答我会更好。PS:我希望答案是'cdb'。因为这就是我们删除两次出现的字符时剩下的内容。
解决方案
您可以使用列表作为堆栈来跟踪前一个字符,如果当前字符与前一个字符相同,则从堆栈中弹出
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))
推荐阅读
- javascript - 如何在传单中显示几个 d3 可重复使用的图表?
- python - 如何处理 Pandas DataFrame 中的缺失值?
- laravel - 未定义的偏移量:刀片 Laravel 5.6 中的 0
- sql - 如何纠正 PL/pgSQL 中缺少引用的“一对多表”?
- javascript - 使用 api 在 facebook 群组帖子上发表评论?
- javascript - Angular Async Validator 未按预期工作
- javascript - 为什么当状态发生突变时 mapStateToProps 返回空对象?
- parallel-processing - 并行处理数据库表中的记录
- php - 如何减去两个表之间的时间
- python - 如何在 mongodb docker build 期间运行 python 夹具脚本?