2
無法將這些循環轉換爲字典理解 - 這可能是不可能的。嵌套的Python詞典理解
總的想法是,我排除的字典,看起來像這樣:
excludes = {
"thing1": ["name", "address"],
"thing2": ["username"]
}
然後,我有,我要「乾淨」的使用排除
original_dict = {
"thing1": {"name": "John", "address": "123 Anywhere Drive", "occupation": "teacher" },
"thing2": {"username": "bearsfan123", "joined_date": "01/01/2015"},
"thing3": {"pet_name": "Spot"}
}
較大的字典如果我運行以下:
for k, v in original_dict.iteritems():
if k in excludes.keys():
for key in excludes[k]:
del v[key]
我剩下:
original_dict = {
"thing1": {"occupation": "teacher" },
"thing2": {"joined_date": "01/01/2015"},
"thing3": {"pet_name": "Spot"}
}
這是完美的,但我不知道如果我能更好地代表這是一個字典解析 - 只需添加我想要的鑰匙,而不是刪除那些我不知道。
我已經得到下降到第二for
但我不知道如何表示在
new_dict = {k: v for (k, v) in original_dict.iteritems()}
這是優秀的,謝謝。我認爲你是對的,但我應該首先提出這個問題:「我應該把它理解爲理解」。我也喜歡for循環方法的變體,我可以用它來代替。 – diplosaurus 2015-02-10 20:25:21