>>> from difflib import *
>>> list(ndiff("LETTER","LTR"))
[' L', '- E', ' T', '- T', '- E', ' R']
#so filter out letters which doesn't have '-'
>>> ''.join(x.strip('-').strip() for x in filter(lambda x:'-' in x,ndiff("LETTER","LTR")))
'ETE'
>>> ''.join(x.strip('-').strip() for x in filter(lambda x:'-' in x,ndiff("stack","tc")))
'sak'
使用^{} 库中的
ndiff()
:如果字母顺序无关紧要,可以使用
^{pr2}$Counter()
:受欢迎的问题:-)我认为这是一个非常可读的:
现在
^{pr2}$打印“ETE”
这似乎是你想做的。它保留了原始的顺序,适用于“删除集”中同一个字母的倍数,如果“删除集”中包含不在原始字符串中的字符,则不会出现barf。在
相关问题 更多 >
编程相关推荐