Question 469 of 511
Modules and PackageshardMultiple SelectObjective-mapped

Quick Answer

The correct answer is that importing a module adds it to sys.modules, because Python caches imported modules in this dictionary to optimize performance and ensure that module-level code executes only once. When a module is imported for the first time, Python runs its code and stores the resulting module object in sys.modules; any subsequent import of the same module simply retrieves that cached object, skipping re-execution. On the Certified Associate Python Programmer PCAP exam, this concept tests your understanding of Python’s import system and module caching behavior—a common trap is assuming that multiple import statements re-run the module’s code, when in fact they only return the cached reference. To remember this, think of sys.modules as Python’s “library card catalog”: once a module is checked in, you just look it up again instead of rewriting the book.

PCAP Modules and Packages Practice Question

This PCAP practice question tests your understanding of modules and packages. Read the scenario carefully and evaluate each option against the stated constraints before committing to an answer. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.

Which TWO of the following are true about importing modules using the import statement?

Question 1hardmulti select
Full question →

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

The module is executed only once on the first import.

Option A is correct because Python caches imported modules in the sys.modules dictionary. When a module is imported for the first time, it is executed and its code is stored; subsequent imports of the same module simply retrieve the cached object from sys.modules without re-executing the module's code. This ensures that module-level initialization runs only once, preventing side effects like repeated resource allocation or redefinition of global variables.

Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • The module is executed only once on the first import.

    Why this is correct

    Subsequent imports retrieve the cached module.

    Related concept

    Read the scenario before looking for a memorised answer.

  • Relative imports can be used in scripts executed as the main module.

    Why it's wrong here

    Relative imports are only allowed in packages.

  • Importing a module with a different name using 'as' creates a copy of the module.

    Why it's wrong here

    It creates an alias, not a copy.

  • Circular imports always cause an ImportError.

    Why it's wrong here

    Circular imports can work if one module is fully loaded before the other.

  • Importing a module adds it to sys.modules.

    Why this is correct

    sys.modules caches imported modules.

    Related concept

    Read the scenario before looking for a memorised answer.

Common exam traps

Common exam trap: answer the scenario, not the keyword

Python Institute often tests the misconception that 'import module as alias' creates a separate copy of the module, when in reality it only creates an additional reference to the same module object in sys.modules.

Detailed technical explanation

How to think about this question

Under the hood, the import machinery checks sys.modules first; if the module is present, it returns the cached object without executing the module file again. This caching is crucial for performance and consistency, especially in large applications where the same module might be imported from many places. A subtle behavior is that if a module is deleted from sys.modules, a subsequent import will re-execute it, which can be used for hot-reloading but also introduces risks if not handled carefully.

KKey Concepts to Remember

  • Read the scenario before looking for a memorised answer.
  • Find the constraint that changes the correct option.
  • Eliminate answers that are true in general but not in this case.

TExam Day Tips

  • Watch for words such as best, first, most likely and least administrative effort.
  • Review why wrong options are wrong, not only why the correct option is correct.

Key takeaway

Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.

Real-world example

How this comes up in practice

A media company stores terabytes of video archives that are accessed once a year for audit purposes. Moving these objects to a cold storage tier (Azure Archive, S3 Glacier, or Google Nearline) costs a fraction of hot storage. Questions like this test whether you understand storage tiers, access frequency tradeoffs, and retrieval latency requirements.

What to study next

Got this wrong? Here's your next step.

Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.

Related practice questions

Related PCAP practice-question pages

Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.

Practice this exam

Start a free PCAP practice session

Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.

FAQ

Questions learners often ask

What does this PCAP question test?

Modules and Packages — This question tests Modules and Packages — Read the scenario before looking for a memorised answer..

What is the correct answer to this question?

The correct answer is: The module is executed only once on the first import. — Option A is correct because Python caches imported modules in the sys.modules dictionary. When a module is imported for the first time, it is executed and its code is stored; subsequent imports of the same module simply retrieve the cached object from sys.modules without re-executing the module's code. This ensures that module-level initialization runs only once, preventing side effects like repeated resource allocation or redefinition of global variables.

What should I do if I get this PCAP question wrong?

Identify which exam domain this question belongs to, review the core concept, then practise similar questions from the same domain.

What is the key concept behind this question?

Read the scenario before looking for a memorised answer.

About these practice questions

Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Keep practising

More PCAP practice questions

Last reviewed: Jun 30, 2026

Question Discussion

Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.

Loading comments…

Sign in to join the discussion.

This PCAP practice question is part of Courseiva's free Python Institute certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the PCAP exam.