这两行有效:
all_text=["Happy"]
if set(all_text).intersection("I'm HAPPY and SAD"):
这些似乎不起作用:
all_text=["Happy","SAD"]
if set(all_text[0]).intersection("I'm HAPPY and SAD"):
all_text=["Happy","SAD"]
if set(all_text[1]).intersection("I'm HAPPY and SAD"):
似乎我无法访问单个项目。
答案 0 :(得分:1)
您在这里错过了结束"
:
all_text=["Happy", "SAD]
实际上,在上述声明的两个地方。复制和粘贴?可能。
答案 1 :(得分:1)
在iterable上调用set()
会将可迭代项分别收集到新的集合对象中。因此,执行set(all_text[0])
正在对字符串"Happy"
中的字符进行设置:
>>> all_text=["Happy","SAD"]
>>> set(all_text[0])
{'p', 'a', 'H', 'y'}
>>>
要做你想做的事,你需要把字符串放在一个列表中:
>>> set([all_text[0]])
{'Happy'}
>>>
这样可以防止它被分解成字符。