Skip to main content
 首页 » 编程设计

python之在字典中查找最接近的匹配数字(python)

2025年05月04日16myhome

x = 115 
 
freq_chart = { 
'C1':'65.4063913251', 
'C#1':'69.2956577442', 
'D1':'73.4161919794', 
'D#1':'77.7817459305', 
'E1':'82.4068892282', 
'F1':'87.3070578583', 
'F#1':'92.4986056779', 
'G1':'97.9988589954', 
'G#1':'103.826174395', 
'A1':'110', 
'A#1':'116.5409403795', 
'B1':'123.470825314' 
} 

我需要返回 freq_chart 中 x 最接近的最接近的音符名称。在此示例中,x 最接近 A#1。语法是什么?谢谢!

请您参考如下方法:

您可以使用 min:

>>> min(freq_chart, key=lambda y:abs(float(freq_chart[y])-x)) 
'A#1'