Bird
Raised Fist0
Pythonprogramming~5 mins

len() function in Python - Time & Space Complexity

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
Time Complexity: len() function
O(1)
Understanding Time Complexity

Let's explore how the time it takes to find the length of a collection changes as the collection grows.

We want to know how the len() function's work changes with bigger inputs.

Scenario Under Consideration

Analyze the time complexity of the following code snippet.

my_list = [1, 2, 3, 4, 5]
length = len(my_list)
print(length)

This code finds and prints the number of items in a list.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: Accessing the stored length value of the list.
  • How many times: Exactly once, no loops or repeated steps.
How Execution Grows With Input

Finding the length does not need to count items one by one each time.

Input Size (n)Approx. Operations
101
1001
10001

Pattern observation: The work stays the same no matter how big the list is.

Final Time Complexity

Time Complexity: O(1)

This means finding the length takes the same quick step no matter the size of the list.

Common Mistake

[X] Wrong: "len() counts every item each time, so it gets slower with bigger lists."

[OK] Correct: Python stores the length, so len() just reads that stored number instantly.

Interview Connect

Knowing that len() is very fast helps you write clear and efficient code without worrying about hidden slow parts.

Self-Check

"What if we used a custom linked list without a stored length? How would len() behave then?"

Practice

(1/5)
1. What does the len() function do in Python?
easy
A. It returns the number of items in an object like a string or list.
B. It adds two numbers together.
C. It prints text to the screen.
D. It creates a new list.

Solution

  1. Step 1: Understand the purpose of len()

    The len() function counts how many items are inside an object like a string, list, or dictionary.
  2. Step 2: Compare options with the function's purpose

    Only It returns the number of items in an object like a string or list. correctly describes this behavior. Other options describe different actions.
  3. Final Answer:

    It returns the number of items in an object like a string or list. -> Option A
  4. Quick Check:

    len() counts items [OK]
Hint: Remember: len() counts items inside, not math or printing [OK]
Common Mistakes:
  • Thinking len() adds numbers
  • Confusing len() with print()
  • Believing len() creates new lists
2. Which of the following is the correct way to use len() to find the length of a list named fruits?
easy
A. length = fruits.len()
B. length = len[fruits]
C. length = len(fruits)
D. length = len.fruits()

Solution

  1. Step 1: Recall correct syntax for calling functions

    Functions in Python use parentheses with the object inside, like len(fruits).
  2. Step 2: Check each option's syntax

    length = len(fruits) uses correct syntax. Options B, C, and D misuse brackets, dot notation, or parentheses.
  3. Final Answer:

    length = len(fruits) -> Option C
  4. Quick Check:

    Use parentheses with len() [OK]
Hint: Use parentheses with len(), not brackets or dots [OK]
Common Mistakes:
  • Using square brackets instead of parentheses
  • Trying to call len() as a method on the object
  • Using dot notation incorrectly
3. What will be the output of this code?
my_list = [10, 20, 30, 40]
print(len(my_list))
medium
A. 3
B. Error
C. 40
D. 4

Solution

  1. Step 1: Identify the list elements

    The list my_list contains 4 items: 10, 20, 30, and 40.
  2. Step 2: Apply len() to the list

    The len() function returns the number of items, which is 4.
  3. Final Answer:

    4 -> Option D
  4. Quick Check:

    len([10,20,30,40]) = 4 [OK]
Hint: Count items inside the list to find len() [OK]
Common Mistakes:
  • Confusing last item value with length
  • Off-by-one counting errors
  • Expecting len() to return sum
4. The following code gives an error. What is the problem?
my_string = "hello"
print(len my_string)
medium
A. Missing parentheses after len
B. Using double quotes instead of single quotes
C. Variable name is invalid
D. len() cannot be used on strings

Solution

  1. Step 1: Check the syntax of the len() function call

    Functions require parentheses around their arguments. Here, len is called without parentheses.
  2. Step 2: Identify the error cause

    Missing parentheses cause a syntax error. Other options are incorrect because double quotes are allowed, variable name is valid, and len() works on strings.
  3. Final Answer:

    Missing parentheses after len -> Option A
  4. Quick Check:

    Always use parentheses with len() [OK]
Hint: Always put parentheses after len() [OK]
Common Mistakes:
  • Forgetting parentheses after function name
  • Thinking quotes affect len() usage
  • Assuming len() can't handle strings
5. You have a dictionary data = {'a': 1, 'b': 2, 'c': 3}. You want to check if it has exactly 3 keys before processing. Which code correctly uses len() for this check?
hard
A. if len(data.values()) < 3: print("Correct number of keys")
B. if len(data) == 3: print("Correct number of keys")
C. if len(data.keys()) > 3: print("Correct number of keys")
D. if len(data.items()) != 3: print("Correct number of keys")

Solution

  1. Step 1: Understand what len() returns for a dictionary

    Using len() on a dictionary returns the number of keys.
  2. Step 2: Check the condition for exactly 3 keys

    if len(data) == 3: print("Correct number of keys") checks if len(data) equals 3, which is correct. Other options check for greater than, less than, or not equal, which do not match the requirement.
  3. Final Answer:

    if len(data) == 3: print("Correct number of keys") -> Option B
  4. Quick Check:

    len(dict) counts keys [OK]
Hint: len(dict) gives number of keys directly [OK]
Common Mistakes:
  • Using > or < instead of == for exact count
  • Checking values or items unnecessarily
  • Misunderstanding what len(dict) returns