Bird
Raised Fist0
Pythonprogramming~10 mins

Why modules are needed in Python - Test Your Understanding

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
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to import the math module.

Python
import [1]
Drag options to blanks, or click blank then click option'
Amath
Bsys
Crandom
Dos
Attempts:
3 left
💡 Hint
Common Mistakes
Using a module name unrelated to math.
Forgetting to import the module before using it.
2fill in blank
medium

Complete the code to use the square root function from the math module.

Python
result = math.[1](16)
Drag options to blanks, or click blank then click option'
Apow
Bsin
Clog
Dsqrt
Attempts:
3 left
💡 Hint
Common Mistakes
Using pow which raises a number to a power.
Using unrelated functions like log or sin.
3fill in blank
hard

Fix the error in the code to correctly use the random module to get a random number.

Python
import random
number = random.[1](1, 10)
Drag options to blanks, or click blank then click option'
Arandint
Brandomint
Crand
Drandom
Attempts:
3 left
💡 Hint
Common Mistakes
Using randomint which does not exist.
Using rand or random which are incorrect here.
4fill in blank
hard

Fill both blanks to create a list of squares using a module function.

Python
import math
squares = [math.[1](x, 2) for x in range(1, 6) if x [2] 0]
Drag options to blanks, or click blank then click option'
Apow
B>
C==
D<
Attempts:
3 left
💡 Hint
Common Mistakes
Using equality '==' instead of greater than '>'.
Using incorrect function names for power.
5fill in blank
hard

Fill all three blanks to create a dictionary of numbers and their square roots using the math module.

Python
import math
roots = { [1]: math.[2]([3]) for [1] in range(1, 5) }
Drag options to blanks, or click blank then click option'
Anum
Bsqrt
Dval
Attempts:
3 left
💡 Hint
Common Mistakes
Using different variable names inside the comprehension.
Using a wrong function name instead of sqrt.

Practice

(1/5)
1. Why do we use modules in Python?
easy
A. To organize code into reusable parts
B. To make code run faster automatically
C. To write code without any errors
D. To avoid using functions

Solution

  1. Step 1: Understand the purpose of modules

    Modules help organize code so it can be reused easily in different parts of a program or in other programs.
  2. Step 2: Compare options with module purpose

    Only To organize code into reusable parts correctly states that modules organize code into reusable parts. Other options describe unrelated benefits.
  3. Final Answer:

    To organize code into reusable parts -> Option A
  4. Quick Check:

    Modules = reusable code parts [OK]
Hint: Modules help reuse code easily [OK]
Common Mistakes:
  • Thinking modules make code faster automatically
  • Believing modules fix all errors
  • Confusing modules with avoiding functions
2. Which of these is the correct way to import a module named math in Python?
easy
A. require math
B. include math
C. using math
D. import math

Solution

  1. Step 1: Recall Python import syntax

    In Python, the keyword to bring in modules is import.
  2. Step 2: Check each option

    Only import math uses the correct Python syntax: import math. Others are invalid in Python.
  3. Final Answer:

    import math -> Option D
  4. Quick Check:

    Import module = import [OK]
Hint: Use 'import' keyword to bring modules [OK]
Common Mistakes:
  • Using 'include' or 'require' like other languages
  • Writing 'using' instead of 'import'
  • Forgetting the import keyword
3. What will be the output of this code?
import math
print(math.sqrt(16))
medium
A. 4.0
B. 16
C. Error: sqrt not found
D. None

Solution

  1. Step 1: Understand the code

    The code imports the math module and calls sqrt(16) which calculates the square root of 16.
  2. Step 2: Calculate the square root

    The square root of 16 is 4.0 (a float), so the print statement outputs 4.0.
  3. Final Answer:

    4.0 -> Option A
  4. Quick Check:

    math.sqrt(16) = 4.0 [OK]
Hint: math.sqrt(16) returns 4.0 [OK]
Common Mistakes:
  • Expecting integer 4 instead of float 4.0
  • Thinking sqrt is not in math module
  • Forgetting to import math module
4. Find the error in this code:
import random
print(random.rand(5))
medium
A. random module is not imported
B. rand is not a function in random module
C. print statement syntax error
D. random.rand(5) returns a list, not a number

Solution

  1. Step 1: Check module import

    The code correctly imports the random module, so no import error.
  2. Step 2: Verify function name in random module

    The random module does not have a function named rand. The correct function is randint or random.
  3. Final Answer:

    rand is not a function in random module -> Option B
  4. Quick Check:

    random.rand() does not exist [OK]
Hint: Check function names carefully in modules [OK]
Common Mistakes:
  • Assuming all random functions start with 'rand'
  • Thinking import failed without error
  • Confusing function output types
5. You want to split a big program into smaller files to keep code clean and reusable. What should you do?
hard
A. Write all code in one file to avoid confusion
B. Copy and paste code between files manually
C. Use modules to organize code into separate files
D. Avoid using functions and write everything inline

Solution

  1. Step 1: Understand the problem of big programs

    Big programs become hard to manage if all code is in one file or copied repeatedly.
  2. Step 2: Use modules for organization

    Modules let you split code into separate files that can be reused and maintained easily.
  3. Step 3: Evaluate other options

    Options A, B, and D lead to messy or inefficient code management.
  4. Final Answer:

    Use modules to organize code into separate files -> Option C
  5. Quick Check:

    Modules = split big code cleanly [OK]
Hint: Split big code using modules [OK]
Common Mistakes:
  • Keeping all code in one file
  • Copy-pasting code instead of reusing
  • Avoiding functions and modules