删除一个键及其在其他键中的出现';python字典中的s值

删除一个键及其在其他键中的出现';python字典中的s值,python,dictionary,Python,Dictionary,假设我有一本字典 myDict={0: set([1]),1: set([0, 2]),2: set([1, 3]),3: set([2])} 我想从字典中删除1,这意味着键“1”以及在其他键的值集中每次出现1。例如,删除1会使字典看起来像 myDict={0: set([]),2: set([ 3]),3: set([2])} 我正在努力做到这一点,但无法做到。提前谢谢 del myDict[item] for key, value in myDict.items(): if it

假设我有一本字典

myDict={0: set([1]),1: set([0, 2]),2: set([1, 3]),3: set([2])}
我想从字典中删除1,这意味着键“1”以及在其他键的值集中每次出现1。例如,删除1会使字典看起来像

myDict={0: set([]),2: set([ 3]),3: set([2])}

我正在努力做到这一点,但无法做到。提前谢谢

del myDict[item]
for key, value in myDict.items():
    if item in value:
        myDict[key] = value.difference(set([item]))
你可以用这样的东西。首先从字典中删除
,然后使用set difference从值中删除所有出现的项

val = 1
if val in myDict:
    del myDict[val]
for key in myDict.keys():
   if  isinstance( myDict[key], set) and val in myDict[key]:
        myDict[key].remove(val)

你可以用这样的东西。首先从字典中删除
,然后使用set difference从值中删除所有出现的项。

删除
值的简单非优化单行程序

val = 1
if val in myDict:
    del myDict[val]
for key in myDict.keys():
   if  isinstance( myDict[key], set) and val in myDict[key]:
        myDict[key].remove(val)
{k : v - {value} for k, v in myDict.items() if k != value}

编辑:感谢@mata的符号
{value}
,我总是忘记它

一个简单的未优化的一行程序,用于删除

{k : v - {value} for k, v in myDict.items() if k != value}

编辑:感谢@mata的符号
{value}
,我总是忘记它

“我正在努力做到这一点,但无法做到”。问题到底是什么?我没能做到“我正试图做到这一点,但没能做到”。到底是什么问题?我没能做到