我想编写一个函数,该函数将使用两个字符串参数,并返回一个包含两个字符串中所有字母的列表。返回的所有字母均应为小写,并且结果列表中不应有重复的字母。例子:string_scramble('GraSS','grilled cheese')应该返回:['g','r','s']我的解决方案:def string_scramble(string_one, string_two):l = []str_concat = string_one + string_twostr_lower = str_concat.lower()str_space = sorted(str_lower.replace(" ", ""))for i in str_space: if i not in l: l.append(i)print(l)return lstring_scramble(“ GraSS”,“烤奶酪”)这将返回:['a','c','d','e','g','h','i','l','r','s']
2 回答

MYYA
TA贡献1868条经验 获得超4个赞
为此使用集合交集
>>> def string_scramble(s1, s2):
... return set(s1.lower()) & set(s2.lower())
...
>>>
>>> string_scramble('GraSS', 'grilled cheese')
{'r', 's', 'g'}

子衿沉夜
TA贡献1828条经验 获得超3个赞
您可以使用将它们转换为sets并使用set.intersection
def string_scramble(a, b):
return set(str.lower(a)).intersection(str.lower(b))
string_scramble('GraSS', 'grilled cheese')
退货
{'g', 'r', 's'}
添加回答
举报
0/150
提交
取消