Python: Find the sublist of numbers with only odd digits in increasing order
Python Programming Puzzles: Exercise-82 with Solution
Write a Python program to find the sublist of numbers from a given list of numbers with only odd digits in increasing order.
Input: [1, 3, 79, 10, 4, 2, 39] Output: [1, 3, 39, 79] Input: [11, 31, 40, 68, 77, 93, 48, 1, 57] Output: [1, 11, 31, 57, 77, 93] Input: [9, -2, 3, 4, -2, 0, 2, -3, 8, -1] Output: [-3, -1, 3, 9]
Visual Presentation:
Sample Solution:
Python Code:
# License: https://bit.ly/3oLErEI
# Define a function named 'test' that takes a list of numbers 'nums' as input
def test(nums):
# Use a list comprehension to filter numbers with only odd digits and sort them in increasing order
return sorted(n for n in nums if all(int(c) % 2 for c in str(abs(n))))
# Example 1
nums1 = [1, 3, 79, 10, 4, 2, 39]
print("Original list of numbers:")
print(nums1)
print("Sublist of numbers with only odd digits in increasing order:")
print(test(nums1))
# Example 2
nums2 = [11, 31, 40, 68, 77, 93, 48, 1, 57]
print("\nOriginal list of numbers:")
print(nums2)
print("Sublist of numbers with only odd digits in increasing order:")
print(test(nums2))
# Example 3
nums3 = [9, -2, 3, 4, -2, 0, 2, -3, 8, -1]
print("\nOriginal list of numbers:")
print(nums3)
print("Sublist of numbers with only odd digits in increasing order:")
print(test(nums3))
Sample Output:
Original list of numbers: [1, 3, 79, 10, 4, 2, 39] Sublist of numbers of the said list with only odd digits in increasing order: [1, 3, 39, 79] Original list of numbers: [11, 31, 40, 68, 77, 93, 48, 1, 57] Sublist of numbers of the said list with only odd digits in increasing order: [1, 11, 31, 57, 77, 93] Original list of numbers: [9, -2, 3, 4, -2, 0, 2, -3, 8, -1] Sublist of numbers of the said list with only odd digits in increasing order: [-3, -1, 3, 9]
Flowchart:
Python Code Editor :
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
Previous: Calculate the average of the numbers a through b rounded to nearest integer, in binary.
Next: Find two indices making a given string unhappy.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.
https://w3resource.com/python-exercises/puzzles/python-programming-puzzles-82.php
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics