This question already has answers here:
Removing duplicate characters from a string
(14 个回答)
1年前关闭。
我是初学者,自从我开始学习 python 已经有大约 2 个月了。
我写了一个关于一个函数的代码,它接受两个字符串,并输出这两个字符串之间的公共(public)字符。我的代码的问题在于它返回两个输入具有的所有公共(public)字符。例如:
输入:普通,白痴
理想情况下它应该是“omn”时,输出是“oommoon”。
我试过使用 count() 函数,然后使用 replace 函数,但它最终完全替换了在输出中出现多次的字母,这是应该的。
我应该怎么做?我的意思是,对于这里的大多数人来说,这可能是一个简单的解决方案,但是最简单的方法是什么让我,一个对基础知识有一定了解的初学者,理解它?
最后,通过将所有字符连接在一起,将其转换回字符串。
或者,全部在一行中:
这将返回
(14 个回答)
1年前关闭。
我是初学者,自从我开始学习 python 已经有大约 2 个月了。
我写了一个关于一个函数的代码,它接受两个字符串,并输出这两个字符串之间的公共(public)字符。我的代码的问题在于它返回两个输入具有的所有公共(public)字符。例如:
输入:普通,白痴
理想情况下它应该是“omn”时,输出是“oommoon”。
我试过使用 count() 函数,然后使用 replace 函数,但它最终完全替换了在输出中出现多次的字母,这是应该的。
我应该怎么做?我的意思是,对于这里的大多数人来说,这可能是一个简单的解决方案,但是最简单的方法是什么让我,一个对基础知识有一定了解的初学者,理解它?
最佳答案
您可以使用集合,只要最终字符的顺序无关紧要。
首先,用一组交集将两个字符串连接在一起。
string_1 = "common"
string_2 = "moron"
set_1 = set(string_1).intersection(set(string_2))
最后,通过将所有字符连接在一起,将其转换回字符串。
result = "".join(set_1)
或者,全部在一行中:
"".join(set(string_1).intersection(set(string_2)))
这将返回
"mno"
。关于python - 如何限制字符出现在python字符串中的次数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58473457/