Python Program to Minimum Value Key Assignment

The meaning of minimum value key assignment in Python is comparing values from multiple dictionaries with the same keys and creating a new dictionary where each key gets assigned the minimum value from the comparison. This technique is useful for data merging, finding optimal values, and dictionary operations.

Python's implementation of a data structure known more commonly as an associative array is a dictionary. A dictionary is made up of a group of key-value pairs. Each key-value combination corresponds to a key and its corresponding value.

Problem Statement

Given two input dictionaries with the same keys, we need to compare the values of each key in both dictionaries and assign the minimum value to create a resultant dictionary.

Input

inputDict_1 = {"hello": 2, "tutorialspoint": 10, "users": 3}
inputDict_2 = {"hello": 6, "tutorialspoint": 5, "users": 7}

Expected Output

Resultant dictionary after assigning minimum value keys:
{'hello': 2, 'tutorialspoint': 5, 'users': 3}

In the above example:

  • For key hello: min(2, 6) = 2

  • For key tutorialspoint: min(10, 5) = 5

  • For key users: min(3, 7) = 3

Method 1: Using Dictionary Comprehension with min() and items()

This approach uses dictionary comprehension to iterate through one dictionary and compare values with the corresponding key in the second dictionary.

Syntax

{key: min(value, dict2[key]) for key, value in dict1.items()}

Example

# input dictionary 1
inputDict_1 = {"hello": 2, "tutorialspoint": 10, "users": 3}
# input dictionary 2
inputDict_2 = {"hello": 6, "tutorialspoint": 5, "users": 7}

print("Input dictionary 1:", inputDict_1)
print("Input dictionary 2:", inputDict_2)

# Getting minimum value for each key using dictionary comprehension
resultantDict = {k: min(v, inputDict_2[k]) for k, v in inputDict_1.items()}

print("Resultant dictionary after assigning minimum value keys:")
print(resultantDict)
Input dictionary 1: {'hello': 2, 'tutorialspoint': 10, 'users': 3}
Input dictionary 2: {'hello': 6, 'tutorialspoint': 5, 'users': 7}
Resultant dictionary after assigning minimum value keys:
{'hello': 2, 'tutorialspoint': 5, 'users': 3}

Method 2: Using dict(), min() and zip()

This method uses zip() to pair up items from both dictionaries and applies min() to compare the tuples directly.

Example

# input dictionary 1
inputDict_1 = {"hello": 2, "tutorialspoint": 10, "users": 3}
# input dictionary 2
inputDict_2 = {"hello": 6, "tutorialspoint": 5, "users": 7}

print("Input dictionary 1:", inputDict_1)
print("Input dictionary 2:", inputDict_2)

# Using zip to combine both dictionaries and min() to compare tuples
resultantDict = dict([min(i, j) for i, j in zip(
    inputDict_1.items(), inputDict_2.items())])

print("Resultant dictionary after assigning minimum value keys:")
print(resultantDict)
Input dictionary 1: {'hello': 2, 'tutorialspoint': 10, 'users': 3}
Input dictionary 2: {'hello': 6, 'tutorialspoint': 5, 'users': 7}
Resultant dictionary after assigning minimum value keys:
{'hello': 2, 'tutorialspoint': 5, 'users': 3}

Comparison

Method Approach Best For
Dictionary Comprehension Direct key lookup Readable and efficient
zip() with min() Tuple comparison Working with ordered dictionaries

Conclusion

Dictionary comprehension with min() provides the most readable approach for minimum value key assignment. The zip() method works well when dictionary order matters and you need to compare corresponding items.

Updated on: 2026-03-27T12:53:30+05:30

210 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements