在不可变两个值的集合中给出一个值,如何访问另一个值是什么?
它需要在一组集合中,所以我不确定如果没有冻结集我会怎么做。
示例:
myset = frozenset([a,b])
given a, how do I access the value of b?
上下文: 所以我正在迭代一组集
data = [(a list of lists)]
movies = set(frozenset(d[:2]) for d in data)
for movie in movies:
...if a in movie:
...other_value = b
感谢
答案 0 :(得分:0)
有几种方法。由于sets和frozensets是无序的,因此它们需要转换为有序类型,或者迭代整个集合。
myset = frozenset([1, 2])
a = 1
next(i for i in myset if i!=a) # 2
tuple(myset - {a})[0] # 2
list(myset - {a})[0] # 2