就是这样
set
做。
设置
创建a
设置
(这是一个没有任何顺序的集合,其目的是验证什么属于它,什么包含在其中。好吧,集合。就像数学一样)。
要构建一个集合,您可以调用
设置
还有另一组东西。喜欢
S=set([3, 1, 2])
是包含数字1、2和3的集合。那么
set([1,3]).issubset(S)
为True,因为set
{1,3}
包含在套件中
{1,2,3}
当你打电话的时候
设置
对于不是集合的东西,你会得到一个错误。
set(1)
引发错误。
现在,你打电话来了
设置
你认为这是一个“原子”值。所以,你可能会认为它应该引发一个错误。但是字符串是一个集合:字符的集合。所以
S=set("hello")
该集合真的包含
{'h', 'e', 'l', 'o'}
(以任何顺序)。还有
T=set("lol")
也是一组,
{'o','l'}
(我以随机顺序显示它们,因为就像数学一样,没有顺序)。
所以
T.issubset(S)
这里是真的。因为所有的元素
T
也是元素
S
.
现在,这就是“为什么”。至于“如何”,很简单:
"set" in "subset"
这是真的。
这一次,正如你所期望的那样:因为字符串“set”包含在字符串“subset”中。
要检查一个单词是否是列表中任何单词的一部分,您可以
L=["subset", "hello", "world"] # example list of words
any("set" in x for x in L) # True, because "set" is substring of one of the words of L
any("lol" in x for x in L) # False, because "lol" is substring of no word x of L