Bird
Raised Fist0
Pythonprogramming~20 mins

Assignment and augmented assignment in Python - Practice Problems & Coding Challenges

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Challenge - 5 Problems
🎖️
Assignment Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
Predict Output
intermediate
2:00remaining
Output of augmented assignment with strings
What is the output of this code?
Python
text = "Hi"
text += " there"
print(text)
Athere
BHi
CHi there
DHi+= there
Attempts:
2 left
💡 Hint
Remember that += adds to the existing string.
Predict Output
intermediate
2:00remaining
Value after augmented assignment with lists
What is the value of the list after running this code?
Python
numbers = [1, 2, 3]
numbers += [4, 5]
print(numbers)
A[1, 2, 3, [4, 5]]
B[4, 5]
C[1, 2, 3]
D[1, 2, 3, 4, 5]
Attempts:
2 left
💡 Hint
+= with lists extends the list by adding elements.
Predict Output
advanced
2:00remaining
Output of mixed augmented assignments
What is the output of this code?
Python
x = 5
x *= 2
x -= 3
print(x)
A7
B10
C16
D13
Attempts:
2 left
💡 Hint
Apply each operation step by step.
Predict Output
advanced
2:00remaining
Error raised by invalid augmented assignment
What error does this code raise?
Python
a = 10
b = "5"
a += b
ATypeError
BNameError
CSyntaxError
DNo error, output is 15
Attempts:
2 left
💡 Hint
You cannot add a string to an integer directly.
🧠 Conceptual
expert
2:00remaining
Effect of augmented assignment on mutable vs immutable types
Which statement is true about augmented assignment (like +=) in Python?
A+= always modifies the object in place regardless of type.
BFor mutable types, += modifies the object in place; for immutable types, it creates a new object.
C+= always creates a new object regardless of type.
DFor immutable types, += modifies the object in place; for mutable types, it creates a new object.
Attempts:
2 left
💡 Hint
Think about lists vs strings and numbers.

Practice

(1/5)
1.

What does the += operator do in Python?

easy
A. Adds the right value to the left variable and updates it
B. Assigns a new variable without changing the old one
C. Subtracts the right value from the left variable
D. Creates a new list from two variables

Solution

  1. Step 1: Understand the meaning of +=

    The += operator adds the value on the right to the variable on the left.
  2. Step 2: Recognize it updates the variable

    It changes the original variable by adding the new value to it.
  3. Final Answer:

    Adds the right value to the left variable and updates it -> Option A
  4. Quick Check:

    += means add and assign [OK]
Hint: Think: add then store back in same variable [OK]
Common Mistakes:
  • Confusing += with simple assignment =
  • Thinking += creates a new variable
  • Mixing += with subtraction or multiplication
2.

Which of the following is the correct syntax to add 5 to variable x using augmented assignment?

x = 10
# Add 5 to x here
easy
A. x =+ 5
B. x += 5
C. x =+5
D. x = x +

Solution

  1. Step 1: Identify correct augmented assignment syntax

    The correct syntax to add and assign is x += 5.
  2. Step 2: Check other options for syntax errors

    Choices like x =+ 5 and x =+5 use incorrect operator placement; x = x + is incomplete.
  3. Final Answer:

    x += 5 -> Option B
  4. Quick Check:

    Use += for adding and assigning [OK]
Hint: Remember: operator before equals for augmented assignment [OK]
Common Mistakes:
  • Writing =+ instead of +=
  • Leaving out the value after +
  • Using incomplete expressions
3.

What is the output of this code?

count = 3
count += 4
count -= 2
print(count)
medium
A. 9
B. 7
C. 3
D. 5

Solution

  1. Step 1: Calculate count += 4

    Starting from 3, adding 4 gives 7.
  2. Step 2: Calculate count -= 2

    Subtracting 2 from 7 gives 5.
  3. Final Answer:

    5 -> Option D
  4. Quick Check:

    3 + 4 - 2 = 5 [OK]
Hint: Follow each operation step-by-step [OK]
Common Mistakes:
  • Adding and subtracting in wrong order
  • Confusing += and -= effects
  • Ignoring the initial value
4.

Find the error in this code snippet:

total = 10
total + = 5
print(total)
medium
A. TypeError because + cannot be used with int
B. NameError because total is not defined
C. SyntaxError due to space in augmented assignment
D. No error, prints 15

Solution

  1. Step 1: Check augmented assignment syntax

    The operator += must not have spaces between + and =.
  2. Step 2: Identify the error caused by space

    Writing + = causes a SyntaxError in Python.
  3. Final Answer:

    SyntaxError due to space in augmented assignment -> Option C
  4. Quick Check:

    No spaces allowed in += operator [OK]
Hint: No spaces between + and = in augmented assignment [OK]
Common Mistakes:
  • Adding spaces inside augmented assignment operator
  • Assuming it works like normal addition
  • Ignoring syntax error messages
5.

You have a variable score = 50. You want to increase it by 10%, then subtract 5 using augmented assignments. Which code correctly does this?

score = 50
# Increase by 10%
# Subtract 5
hard
A. score *= 1.1 score -= 5
B. score += 10 score -= 5
C. score = score + 10% score = score - 5
D. score += 0.1 score -= 5

Solution

  1. Step 1: Increase score by 10%

    Multiplying by 1.1 increases the value by 10%, so score *= 1.1 is correct.
  2. Step 2: Subtract 5 using augmented assignment

    Use score -= 5 to subtract 5 from the updated score.
  3. Final Answer:

    score *= 1.1 score -= 5 -> Option A
  4. Quick Check:

    Multiply by 1.1 then subtract 5 [OK]
Hint: Use *= for percent increase, then -= for subtraction [OK]
Common Mistakes:
  • Adding 10 instead of 10%
  • Using invalid syntax like 10%
  • Not updating score before subtracting