我有以下字典
dict1 ={"city":"","name":"yass","region":"","zipcode":"",
"phone":"","address":"","tehsil":"", "planet":"mars"}
我正在尝试创建一个基于dict1的新字典,但是:
- 它将不包含空字符串键。
- 它将不包含我不想包括的那些键。
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}
生成的字典应该像下面这样:
new = {"name":"yass"}
{k: v for k, v ....}
,即使它不兼容Python 2.6,但我们知道OP正在使用2.7+。 - jamylak