Bird
Raised Fist0
Pythonprogramming~20 mins

List creation and representation 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
๐ŸŽ–๏ธ
List Mastery Badge
Get all challenges correct to earn this badge!
Test your skills under time pressure!
โ“ Predict Output
intermediate
2:00remaining
Output of list creation with mixed types
What is the output of this Python code?
Python
my_list = [1, '2', 3.0, True]
print(my_list)
A[1, '2', 3.0, True]
B[1, 2, 3.0, True]
C[1, '2', 3, True]
D[1, '2', 3.0, 1]
Attempts:
2 left
๐Ÿ’ก Hint
Remember that strings and numbers are different types and are shown with quotes or without.
โ“ Predict Output
intermediate
2:00remaining
Length of a nested list
What is the value of len(my_list) after running this code?
Python
my_list = [1, [2, 3], 4]
print(len(my_list))
A4
B3
C5
DTypeError
Attempts:
2 left
๐Ÿ’ก Hint
len() counts the top-level items in the list, not inside nested lists.
โ“ Predict Output
advanced
2:00remaining
Output of list multiplication with nested lists
What is the output of this code?
Python
lst = [[0]] * 3
lst[0][0] = 5
print(lst)
A[[5], [5], [5]]
B[[0], [0], [0]]
C[[5], [0], [0]]
DTypeError
Attempts:
2 left
๐Ÿ’ก Hint
Multiplying a list with nested lists copies references, not independent copies.
โ“ Predict Output
advanced
2:00remaining
Output of list comprehension with condition
What is the output of this code?
Python
result = [x**2 for x in range(5) if x % 2 == 0]
print(result)
ASyntaxError
B[1, 9, 25]
C[0, 4, 16]
D[0, 1, 4, 9, 16]
Attempts:
2 left
๐Ÿ’ก Hint
The condition filters only even numbers before squaring.
๐Ÿง  Conceptual
expert
2:00remaining
Understanding list identity after slicing
Consider this code. What is the output of the print statement?
Python
a = [1, 2, 3, 4]
b = a[:]
b[0] = 100
print(a[0])
A100
BTypeError
CIndexError
D1
Attempts:
2 left
๐Ÿ’ก Hint
Slicing creates a new list copy, so changes to b do not affect a.

Practice

(1/5)
1. Which of the following is the correct way to create an empty list in Python?
easy
A. ()
B. {}
C. []
D. list()

Solution

  1. Step 1: Understand list syntax

    In Python, lists are created using square brackets [] or the list() function.
  2. Step 2: Identify empty list creation

    [] is the literal syntax for an empty list, while list() also creates an empty list but is a function call.
  3. Final Answer:

    [] -> Option C
  4. Quick Check:

    Empty list = [] [OK]
Hint: Empty lists use square brackets [] directly [OK]
Common Mistakes:
  • Using curly braces {} which create sets or dictionaries
  • Using parentheses () which create tuples
  • Confusing list() function with empty list literal
2. Which of the following is the correct syntax to create a list with the items 1, 2, and 3?
easy
A. list = [1, 2, 3]
B. list = <1, 2, 3>
C. list = {1, 2, 3}
D. list = (1, 2, 3)

Solution

  1. Step 1: Recognize list syntax

    Lists in Python use square brackets [] to hold items in order.
  2. Step 2: Check each option

    list = [1, 2, 3] uses square brackets with items 1, 2, 3 correctly. list = (1, 2, 3) uses parentheses which create tuples. list = {1, 2, 3} uses curly braces which create sets. list = <1, 2, 3> uses invalid syntax.
  3. Final Answer:

    list = [1, 2, 3] -> Option A
  4. Quick Check:

    List with items = [1, 2, 3] [OK]
Hint: Lists use square brackets [] with commas between items [OK]
Common Mistakes:
  • Using parentheses () which create tuples
  • Using curly braces {} which create sets
  • Using invalid angle bracket syntax
3. What is the output of the following code?
my_list = [10, 'apple', 3.5]
print(my_list)
medium
A. [10, 'apple', 3.5]
B. (10, 'apple', 3.5)
C. {10, 'apple', 3.5}
D. 10, 'apple', 3.5

Solution

  1. Step 1: Understand list contents and print

    The list my_list contains an integer, a string, and a float. Lists can hold mixed types.
  2. Step 2: Print shows list with square brackets

    Printing a list shows its contents inside square brackets with commas separating items.
  3. Final Answer:

    [10, 'apple', 3.5] -> Option A
  4. Quick Check:

    Print list shows square brackets [OK]
Hint: Printed lists show square brackets and commas [OK]
Common Mistakes:
  • Confusing list output with tuple or set syntax
  • Expecting output without brackets
  • Misreading quotes around strings
4. The following code is intended to create a list with numbers 1 to 3, but it causes an error. What is the problem?
numbers = [1, 2, 3
print(numbers)
medium
A. Using quotes around numbers
B. Using parentheses instead of square brackets
C. Missing commas between numbers
D. Missing closing square bracket ]

Solution

  1. Step 1: Check list syntax

    The list starts with [ but does not have a closing ] bracket.
  2. Step 2: Identify syntax error

    Missing the closing bracket causes a syntax error when Python tries to parse the list.
  3. Final Answer:

    Missing closing square bracket ] -> Option D
  4. Quick Check:

    Lists need matching brackets [OK]
Hint: Always match opening and closing brackets [] [OK]
Common Mistakes:
  • Forgetting to close the list with ]
  • Confusing brackets with parentheses
  • Missing commas between items
5. You want to create a list that contains the numbers 1 to 5, but only even numbers should be included. Which code correctly creates this list?
hard
A. evens = [x for x in range(1, 6) if x % 2 != 0]
B. evens = [x for x in range(1, 6) if x % 2 == 0]
C. evens = [x for x in range(1, 5) if x % 2 == 1]
D. evens = [x for x in range(2, 7) if x % 2 == 1]

Solution

  1. Step 1: Understand list comprehension with condition

    The code uses a list comprehension to select numbers from 1 to 5 (range(1, 6)) and filters only even numbers where x % 2 == 0.
  2. Step 2: Check each option's condition and range

    evens = [x for x in range(1, 6) if x % 2 == 0] correctly uses range 1 to 5 and selects even numbers. Other options select odd numbers or wrong ranges.
  3. Final Answer:

    evens = [x for x in range(1, 6) if x % 2 == 0] -> Option B
  4. Quick Check:

    Even numbers filtered with x % 2 == 0 [OK]
Hint: Use list comprehension with if condition for filtering [OK]
Common Mistakes:
  • Using wrong range limits
  • Filtering odd numbers instead of even
  • Confusing modulo condition