Method # 1: Using a comprehension list + keys ()
+ lambda
A combination of the above functions can be used to perform the specific task of finding the closest key in a dictionary. The keys function can be used to access keys from a dictionary, the lambda function can be used to formulate logic and comprehension of a list to apply it all to the whole list.
# Python3 code to demonstrate how it works # Closest key in the dictionary # Using comprehension list + keys () + lambda # initializing dictionary test_dict = { 13 : ’Hi’ , 15 : ’ Hello’ , 16 c ode> : ’Gfg’ } # initializing closest key search_key = 15.6 # printing the original dictionary print ( "The original dictionary is:" + str (test_dict)) # Using comprehension list + keys () + lambda # Closest key in the dictionary res = test_dict.get (search_key) or test_dict [ min (test_dict.keys (), key = lambda key: abs (key - search_key))] # print result print ( " The value to the closest key: " + str ( res)) |
Output:
The original dictionary is: {16: ’Gfg’, 13:’ Hi’, 15: ’Hello’} The value to the closest key: Gfg
Method # 2: Using bisect_left () + OrderedDi ct ()
This method typically uses the binary search method to find the closest number. Being fast, it reverses the order and also returns 2 potential candidates for the closest values, the current and next key values in the sequence. And it just returns the position of the key.
# Python3 code to demonstrate how it works # Nearest key in dictionary # Using bisect_left () + OrderedDict () import collections import bisect # initializing dictionary test_dict = collections.OrderedDict () test_dict = { 13 : ’ Hi’ , 15 < / code> : ’Hello’ , 16 : ’ Gfg’ } # closest key initialization search_key = 15.6 # printing the original dictionary print ( " The original dictionary is: " + str (test_dict)) # Using bisect_left () + OrderedDict () # Closest key in the dictionary res = bisect.bisect_left ( list (test_dict.keys ()), 15.6 ) # print result print ( " The position of closest key: " + str (res)) |
table> Output:
The original dictionary is: {16: ’Gfg’, 13:’ Hi’, 15: ’Hello’} The position of closest key: 3
Shop
Learn programming in R: courses
$
Best Python online courses for 2022
$
Best laptop for Fortnite
$
Best laptop for Excel
$
Best laptop for Solidworks
$
Best laptop for Roblox
$
Best computer for crypto mining
$
Best laptop for Sims 4
$
Latest questions
NUMPYNUMPY
psycopg2: insert multiple rows with one query
12 answers
NUMPYNUMPY
How to convert Nonetype to int or string?
12 answers
NUMPYNUMPY
How to specify multiple return types using type-hints
12 answers
NUMPYNUMPY
Javascript Error: IPython is not defined in JupyterLab
12 answers
Wiki
Python OpenCV | cv2.putText () method
numpy.arctan2 () in Python
Python | os.path.realpath () method
Python OpenCV | cv2.circle () method
Python OpenCV cv2.cvtColor () method
Python - Move item to the end of the list
time.perf_counter () function in Python
Check if one list is a subset of another in Python
Python os.path.join () method