学会更好的利用函数的各种特性,可以有效的减少思考量。将两段文本先append,再remove—最后循环。即可很好的减少“序”这个方法的思考量。
思路:首先使用集合的去重功能求出目标元素的集合,其次再利用两次循环,为目标元素的集合加上索引。第三部,目标元素的索引排序。第四步,去除元素的大小写差异并输出*注意集合是乱序的
优化:1.双for循环—用字典推导式优化2.for循环排序
思考:数据的筛选不需要只局促在前中部阶段,在后端输出阶段是否是更好的选择呢?尤其是字典阶段
a,b=input(),input()
A,b=set(a),set(b)
c=A.difference(b)
List=[]
text={f'{p}':f'{i}' for i in c for p in range(len(a)) if i.upper()==a[p].upper()}
text=sorted(text.items(),key=lambda x:int(x[0]),reverse=False)
List=[]
for p in text:
if p[1].upper() not in List and p[1].lower() not in List:
List.append(p[1])
print(p[1].upper(),end='')