Challenge 2: The int("3.14") Trap — Possible Solution ==================================================================== raw = "3.99" result = int(float(raw)) print(result) Output: 3 WHY THIS WORKS AS AN ANSWER ------------------------------ Calling int("3.99") directly would raise a ValueError, exactly this chapter's warn-box explained — int() cannot parse a decimal point from a string at all. float("3.99") is used FIRST, which correctly parses the string into the float value 3.99, since float() has no trouble with decimal points. int(...) is then applied to that already-parsed float, which succeeds because int() converting a FLOAT (not a string) simply truncates the decimal portion — 3.99 becomes 3. This two-step float-then-int conversion is exactly the workaround this chapter recommended, and it correctly reproduces the same truncating (not rounding) behavior this chapter's int(3.99) example demonstrated.