字符串设置差异

String set difference

我有两组字符串:ab

type(a)
set

type(b)
set

a
{'South 2nd Street'}

b
{'8921 South 2nd Street'}

为了找到这两个集合之间的区别,我应用了 difference() 函数,我想 return 8921 但是 return整个字符串

b.difference(a)
{'8921 South 2nd Street'}

我猜这是因为这些集合是通过索引 0、1、2、3 等处的字符进行比较的(在这种情况下 a 与 [=13= 完全不同) ])

那么,在不使用集差的情况下获得 Python 中两个字符串之间的组合差异的正确方法是什么?在这种情况下,输出应该是 8921

您的集合包含作为单个元素的整个地址,而不是每个单词的单独元素。

你需要把字符串拆分成单词,然后做成一组。

a = set('South 2nd Street'.split())
b = set('8921 South 2nd Street'.split())
print(b.difference(a))
{'8921'}