PYTHON求集合交集需要用户手动输入集合名

多个集合需要用户手动输入集合的名字然后求其交集

1、获取用户输入
2、减去重复

setlist={
    'A':{1,2,3,4,5,6},
    'B':{1,2,3,7,8,9},
    'C':{1,2,3,4,5,6,7},
    'D':{1,5,6,7,8},
}
print("现有集合:")
for k,v in setlist.items():
    print(k,v)
a,b=input("请输入两个集合求交集,用 , 隔开").split(',')
print(a,b,"交集为:",setlist[a]&setlist[b])

有帮助请采纳,有问题继续交流,你的采纳是对我回答的最大的肯定和动力

img



# 已知的集合
A = {1,2,3,4}
B = {4,5,6,2}
C = {7,8,9,5,3}
D = {1,2,3,4}

# 请输入集合的名称

while True:
    names = input("请输入两个集合的名称,用逗号隔开",)
    __a,__b = names.strip().split(",")
    try:
        aVal = eval(__a) # 变量__a的值
        if not isinstance(aVal,type(set())):
            print("集合名称: {} 不存在,请确认集合是否存在".format(__a))
            continue
        bVal = eval(__b) # 变量__b的值
        if not isinstance(bVal, type(set())):
            print("集合名称: {} 不存在,请确认集合是否存在".format(__b))
            continue
    except Exception as e:
        print(str(e))
        continue
    else:
        print("{} ∩ {} = {}".format(__a,__b,aVal & bVal))

运行结果

img