我有几组值,需要检查其中某些值是位于哪个值中,并返回该值的名称。查找多个值中的哪一个值属于
value = 'a'
set_1 = {'a', 'b', 'c'}
set_2 = {'d', 'e', 'f'}
set_3 = {'g', 'h', 'i'}
set_4 = {'a', 'e', 'i'}
我想检查是否存在集1-3中的值,不包括set_4在方法中,并返回集名称。因此,像:
find_set(value in set_1, set_2, set_3)
应该返回
set_1
也许一些巧妙的lambda函数?我试过
w = next(n for n,v in filter(lambda t: isinstance(t[1],set), globals().items()) if value in v)
Find if value exists in multiple lists但该方法检查所有本地/全局集合。这在这里不起作用,因为这些值可能存在于其中的一些中。我需要能够指定要查看的集合。
为什么您需要该名称? –
@PadraicCunningham我想将值的名称更改为集名称的名称。这是识别同一事物的不同形式写作的功能。例如。我想检查trastutsumab中的TRASTUTSUMAB = {Trastutsumab,trastutsumab,TRASTUTSUMAB,....}并将其值更改为trastutsumab。(我正在研究过去20年来所开的药物的医院统计数据,这些年来许多药物的写作形式已经改变) –