Python 3.x 仅从具有值的dict中选择键

Python 3.x 仅从具有值的dict中选择键,python-3.x,Python 3.x,我有一本很长的字典 mydict = { "6574": [], "3234": [1], "7014": [], "0355": [3], "1144": [2], # … } 我需要获取所有具有非空列表的密钥 mytruedict = {} for k, v in mydict.items(): if v: mytruedict[k]=v 我想知道是否有一种单行方法。使用dict Ex: mydict = {

我有一本很长的字典

mydict = {
    "6574": [],
    "3234": [1],
    "7014": [],
    "0355": [3],
    "1144": [2],
    # …
}
我需要获取所有具有非空列表的密钥

mytruedict = {}
for k, v in mydict.items():
    if v:
        mytruedict[k]=v

我想知道是否有一种单行方法。

使用
dict

Ex:

mydict = {
    "6574": [],
    "3234": [1],
    "7014": [],
    "0355": [3],
    "1144": [2]
}

print( dict((k, v) for k, v in mydict.items() if v) )
#or
print( {k: v for k, v in mydict.items() if v } )   #dict comprehension
{'3234': [1], '1144': [2], '0355': [3]}
输出:

mydict = {
    "6574": [],
    "3234": [1],
    "7014": [],
    "0355": [3],
    "1144": [2]
}

print( dict((k, v) for k, v in mydict.items() if v) )
#or
print( {k: v for k, v in mydict.items() if v } )   #dict comprehension
{'3234': [1], '1144': [2], '0355': [3]}