1 回答

TA貢獻1859條經驗 獲得超6個贊
您可以迭代鍵 1,2 .. N for e in my:,然后借助set()差異計算排除:
并提取這樣的東西
exc = set(['A','B','C']) - set(my[e]["exclude"].split(",") if len(my[e]["exclude"].split(",")) else [] )
接下來你可以取值out1orout2取決于outputas的值
my[e][my[e]["output"]]
在新字典中插入為
newdict[e] = {'exclude': list(exc) ,'EndOutput':my[e][my[e]["output"]]}
總的來說,這就是您可以迭代的方式
newdict = {}
for e in my:
if my[e]['column'].lower() == 'value':
exc = set(['A','B','C']) - set(my[e]["exclude"].split(",") if len(my[e]["exclude"].split(",")) else [] )
newdict[e] = {'exclude': list(exc) ,'EndOutput':my[e][my[e]["output"]]}
打印 newdict 將產生此輸出
'1': {'EndOutput': 'Cost', 'exclude': ['C'] },
'2': {'EndOutput': 'Rev', 'exclude': ['A', 'B', 'C'] }}
添加回答
舉報