Challenge: Zip and Sort Functions
We still have a few functions from the previous chapter to cover, so let's get some practice with them.
Recall the zip()
function, which is particularly useful when working with multiple related lists. This function allows you to manage different properties of items simultaneously, such as sorting products while maintaining their associated attributes.
Task
Swipe to start coding
You got three lists: product names, prices, and quantities sold. Your goal is to organize, sort, and display this data in a specific format.
Code Instructions
- Use
zip()
to combine the three lists into a list of tuples in the order:(product_name, price, quantity_sold)
. Assign the result tocombined_list
. - Use
sorted()
to sortcombined_list
by product name in ascending order. Assign the sorted result tosorted_products
. - Loop through
sorted_products
and print each product's name, price, and quantity sold using the specified format.
Output Requirements
For each product, print:
Requirements checklist
- Check that combined_list is a list of tuples, where each tuple contains a product name, its corresponding price, and quantity sold, zipped from the original lists.
- Check that sorted_products is a list of tuples sorted in ascending order by product name.
- Check that the first tuple in sorted_products has the product name "Apple", and its price and quantity sold match the original lists for "Apple".
- Check that the second tuple in sorted_products has the product name "Banana", and its price and quantity sold match the original lists for "Banana".
- Check that the third tuple in sorted_products has the product name "Cherry", and its price and quantity sold match the original lists for "Cherry".
- Check that the fourth tuple in sorted_products has the product name "Mango", and its price and quantity sold match the original lists for "Mango".
- Check that the program prints four lines, each containing the correct product name, price, and quantity sold in the specified format.
Solution
Everything was clear?
Thanks for your feedback!