私は次の辞書を持っています
dict1 ={"city":"","name":"yass","region":"","zipcode":"",
"phone":"","address":"","tehsil":"", "planet":"mars"}
私は dict1 に基づく新しい辞書を作成しようとしていますが、
- 空の文字列を持つキーは含まれません。
- 含めたくないキーは含まれません。
要件 2 を満たすことができましたが、要件 1 で問題が発生しました。私のコードは次のようになります。
dict1 ={"city":"","name":"yass","region":"","zipcode":"",
"phone":"","address":"","tehsil":"", "planet":"mars"}
blacklist = set(("planet","tehsil"))
new = {k:dict1[k] for k in dict1 if k not in blacklist}
これにより、キーのない辞書が得られます: "tehsil", "planet" 次のことも試しましたが、うまくいきませんでした。
new = {k:dict1[k] for k in dict1 if k not in blacklist and dict1[k] is not None}
結果の dict は次のようになります。
new = {"name":"yass"}