基本上,如果一个字符出现多次,我想一次删除一个字符串。
例如:- 如果我有单词 abaccea 和字符“a”,那么函数的输出应该是 baccea、abacce、abccea。
我读到我可以为 a 和空字符串制作 maketrans,但它会替换字符串中的每个 a。
除了记录列表中的所有位置然后替换和生成单词外,还有其他有效的方法吗?
最佳答案
这是一个快速的方法:
In [6]: s = "abaccea"
In [9]: [s[:key] + s[key+1:] for key,val in enumerate(s) if val == "a"]
Out[10]: ['baccea', 'abccea', 'abacce']
通过简单地用圆括号替换方括号,能够将其变成生成器是有好处的。
关于python - 一次删除字符串中的一个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4379570/