Python,集合,比较同一集合中的两个元素

标签 python set compare

如果我有一个 python 集合,并且我想查明集合中的一个元素是否是同一集合中另一个元素的一部分,我该怎么做?

我尝试过使用索引,但遇到以下问题:

mySet = {"hello", "lo"}
mySet[1] in mySet[0] #I expect to return true
TypeError: 'set' object does not support indexing

我还没有发现 python 文档在这种情况下特别有帮助,因为我不知道如何比较集合中的元素。

顺便说一句,这是我遇到的第一个 Stackoverflow 问题。我尝试遵循最佳实践。如果有办法可以改进这个问题,请告诉我。感谢您的帮助!

最佳答案

集合没有顺序。元素的索引实际上是元素本身。如果您确实需要集合(尽管我怀疑其他数据结构可能合适),那么它们是可迭代的,并且您可以将每个元素与其他元素进行比较,但这不会有很好的性能,例如:

mySet = {"hello", "lo"}
for item in mySet:
    for other_item in mySet.difference([item]):
        if item in other_item:
            print item, other_item

关于Python,集合,比较同一集合中的两个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22209045/

相关文章:

python - 使用 haystack 和 Whoosh

python - 使用输入有没有办法输入范围

Java:如何使用字符串比较用户和真实答案并确保其语法正确?

c++ - 为什么在尝试将重复对象添加到 std::set 时会出现这个奇怪的错误?

Python:获取唯一的元组,使得所有元组中的元素都是不相交的

java - 使用 Arrays.binarySearch 将字符串与对象进行比较

php - 减去 php 数组

python - 在 panda python 中解析组合最小值最大值的通用方法是什么?

python - 获取/呈现一对多关系的最佳方法是什么?

python - 从空集和列表中弹出的不同异常(exception)?