 GeeksforGeeks App
Open App Browser
Continue

# Python program to count Even and Odd numbers in a Dictionary

Given a python dictionary, the task is to count even and odd numbers present in the dictionary.

Examples:

Input : {‘a’: 1, ‘b’: 2, ‘c’: 3, ‘d’: 4, ‘e’ : 5}
Output : Even = 2, odd = 3
Input : {‘x’: 4, ‘y’:9, ‘z’:16}
Output : Even = 2, odd = 1

Approach using values() Function: Traverse the dictionary and extract its elements using values() function and for each extracted value, check if it is even or odd. Finally, print the respective counts.

## Python3

 `# Python3 Program to count even and``# odd numbers present in a dictionary` `# Function to count even and odd``# numbers present in a dictionary``def` `countEvenOdd(``dict``):``    ` `    ``# Stores count of even``    ``# and odd elements``    ``even ``=` `0``    ``odd ``=` `0``    ` `    ``# Traverse the dictionary``    ``for` `i ``in` `dict``.values():``      ` `      ``if` `i ``%` `2` `=``=` `0``:``        ``even ``=` `even ``+` `1``      ``else``:``        ``odd ``=` `odd ``+` `1``        ` `    ``print``(``"Even Count: "``, even)``    ``print``(``"Odd Count: "``, odd)` `# Driver Code` `dict` `=` `{``'a'``: ``1``, ``'b'``: ``2``, ``'c'``: ``3``, ``'d'``: ``4``, ``'e'``: ``5``}``countEvenOdd(``dict``)`

Output:

```Even Count:  2
Odd Count:  3```

Time Complexity: O(N), where N is the length of dict
Auxiliary Space: O(1)

Alternate Approach: Iterate over each item in the dictionary, and for each element, check if it is even or odd.  Finally, print the respective counts.

## Python3

 `# Python3 Program to count even``# and odd elements in a dictionary` `# Function to count even and``# odd elements in a dictionary``def` `countEvenOdd(``dict``):``  ``even ``=` `0``  ``odd ``=` `0``  ` `  ``# Iterate over the dictionary``  ``for` `i ``in` `dict``:``    ` `    ``# If current element is even``    ``if` `dict``[i] ``%` `2` `=``=` `0``:``      ` `      ``# Increase count of even``      ``even ``=` `even ``+` `1``      ` `    ``# Otherwise``    ``else``:``      ` `      ``# Increase count of odd``      ``odd ``=` `odd ``+` `1``      ` `  ``print``(``"Even count: "``, even)``  ``print``(``"Odd count: "``, odd)``    ` `# Driver Code` `# Given Dictionary``dict` `=` `{``'a'``: ``1``, ``'b'``: ``2``, ``'c'``: ``3``, ``'d'``: ``4``, ``'e'``: ``5``}` `countEvenOdd(``dict``)`

Output:

```Even count:  2
Odd count:  3```

Time Complexity: O(N), where N is the length of dict
Auxiliary Space: O(1)

Approach : Using bitwise & operator

## Python3

 `# Python3 Program to count even``# and odd elements in a dictionary``#using bitwise operator` `def` `fun1(x):``    ``if``(x&``1``!``=``0``): ``# Using bitwise opearor``        ``return` `x``# Given Dictionary``dict` `=` `{``'a'``: ``1``, ``'b'``: ``2``, ``'c'``: ``3``, ``'d'``: ``4``, ``'e'``: ``5``}``x``=``list``(``dict``.values())``y``=``filter``(fun1,x)``odd``=``len``(``list``(y))``even``=``len``(x)``-``odd``print``(``"Even count: "``, even)``print``(``"Odd count: "``, odd)` `#This code contributed by vinay pinjala.`

Output

```Even count:  2
Odd count:  3```

Time Complexity: O(N), where N is the length of dict
Auxiliary Space: O(N)

Approach : Using values(),filter() and len() methods

## Python3

 `# Python3 Program to count even``# and odd elements in a dictionary` `def` `fun1(x):``    ``if``(x``%``2``=``=``0``):``        ``return` `x``# Given Dictionary``dict` `=` `{``'a'``: ``1``, ``'b'``: ``2``, ``'c'``: ``3``, ``'d'``: ``4``, ``'e'``: ``5``}``x``=``list``(``dict``.values())``y``=``filter``(fun1,x)``even``=``len``(``list``(y))``odd``=``len``(x)``-``even``print``(``"Even count: "``, even)``print``(``"Odd count: "``, odd)`

Output

```Even count:  2
Odd count:  3```

Time Complexity: O(N), where N is the length of dict
Auxiliary Space: O(N)

My Personal Notes arrow_drop_up