例如,如果两个值是“巧克力”和“蟑螂”,则该函数应返回“choa”
研究:
我找到了find(),或者把它变成了一个列表,这有助于构建函数。
代码:这是我遇到问题的地方!
Value1 = input("Please input a word: ")
Value2 = input("Please input a second word: ")
[How do I find similar letters in two words]
print(similar_letters)
实施例
Please input a word: hello Please input a second word: hey letters in word are : 'he'
答案 0 :(得分:4)
也许你的意思是普通人物?使用集合,只要您不介意删除重复项并更改元素的顺序:
s1 = set("chocolate")
s2 = set("cockroach")
"".join(s1 & s2)
=> "ahco"
答案 1 :(得分:3)
不正确的原始答案(为了评论而保留)。在许多情况下结果是错误的,特别是当样本Value1
和Value2
被置换时。
output= [ x for x in list(Value1) if x in list(Value2) ]
更正回答(恕我直言),如果所需的结果要在Value1
和Value2
多次出现的输出字符中表示。
''.join( [ x * min(Value1.count(x),Value2.count(x)) for x in sorted( set(Value1) | set(Value2) ) ] )
对于样本Value1='chocolate'
和Value2= 'cockroach'
,输出为'acchoo'
(这里的任何双关语?:-))。 sorted
只有函数使字符按字母顺序显示(因此,使得确切的结果字符串稳定)。