Code Avengers Answers Python 2 New Page
items = ["apple", "banana", "orange"] quantities = [0, 5, 12] inventory = {} for i in range(len(items)): inventory[items[i]] = quantities[i]
for item, qty in inventory.items(): if qty > 0: print(f"{item}: {qty}") code avengers answers python 2 new
Use the answers above as a template—type them out manually, change variable names, break them on purpose, and fix them again. By the time you finish Python 2, you won’t need to search for answers anymore. You’ll be the one writing the answers. items = ["apple", "banana", "orange"] quantities = [0,
def format_name(first, last): if len(first) > 3 and len(last) > 3: return f"{last.upper()}, {first.upper()}" else: return "Name too short" The .upper() method ensures case-insensitive matching of expected outputs. The f-string creates the exact comma-space format the auto-grader looks for. Challenge 2: "The Inventory Manager" (Lists & Dictionaries) Problem: You are given a list of item names and a separate list of quantities. Combine them into a single dictionary where the key is the item name and the value is the quantity. Then, write code to print only items with quantity > 0. def format_name(first, last): if len(first) > 3 and
Forgetting that return stops the function.
try: with open("data.txt", "r") as file: for line in file: print(line.strip()) except FileNotFoundError: print("File not found. Please create data.txt") The with statement automatically closes the file. The .strip() removes extra newlines that would otherwise cause double-spacing in the output—a common “hidden” failure in the new grader. Challenge 5: "The Class Constructor" (Introduction to OOP) Problem (New capstone): Create a class Student with attributes name and grades (a list of numbers). Add a method average() that returns the average grade. If the list is empty, return 0.0 .
class Student: def __init__(self, name, grades): self.name = name self.grades = grades def average(self): if len(self.grades) == 0: return 0.0 return sum(self.grades) / len(self.grades)