我试图编写一个lambda并从字典中提取值,但是它返回语法错误。我不知道什么时候出了错,请帮忙
page2 = {'tsrightdominion.blogspot.com': 0.00034787826123863585,
'democraticunderground.com': 0.00405450384913243,
'conservativepunk.com': 0.0004385189536822286,
'anncoulter.org': 0.0009425724015017965,
'aldaynet.org': 0.0012959749358987345,
'gevkaffeegal.typepad.com/the_alliance': 0.0033127018380988433,
'coxandforkum.com': 0.0026879530285120485,
'wonkette.com': 0.004395058499406301,
'hughhewitt.com': 0.006703806759727871,
'blogsforbush.com': 0.012508582138399097,
'drudgereport.com': 0.01071241551989842}
name2 =[lambda val: for key,val in page2.items() if key == 'anncoulter.org']
File "<ipython-input-44-c0422c8a8a14>", line 1
name2 =[lambda val: for key,val in page2.items() if key == 'anncoulter.org']
^
SyntaxError: invalid syntax
答案 0 :(得分:0)
我认为这是正确的语法
name2 = [val for key,val in page2.items() if key == 'anncoulter.org']
结果[0.0009425724015017965]
答案 1 :(得分:0)
我认为您不需要在这里使用lambda。您尝试将列表推导和lambda一起使用,在这种情况下,它们不能一起使用。
随随便便
[val for key, val in your_dict.items() if your_truth_condition]
欢呼,您从字典中获得了val列表。