Home > Backend Development > Python Tutorial > How to Import Files from Subdirectories in Python?

How to Import Files from Subdirectories in Python?

Patricia Arquette
Release: 2024-11-26 17:08:15
Original
423 people have browsed it

How to Import Files from Subdirectories in Python?

Importing Files from Subdirectories

Importing files from subdirectories can be a common challenge when organizing Python code. One may encounter an import error while attempting to access a file residing within a subdirectory. This article addresses the issue and provides a solution.

Scenario

Consider a project structure where a file called tester.py is located within a directory named /project. Within the /project directory is a subdirectory named lib, which contains a file called BoxTime.py. The objective is to import BoxTime from tester.py.

Failed Attempt

An attempt to import BoxTime using the following code results in an error:

import lib.BoxTime
Copy after login
Copy after login

This returns the following traceback:

Traceback (most recent call last):
  File "./tester.py", line 3, in <module>
    import lib.BoxTime
ImportError: No module named lib.BoxTime
Copy after login

Solution

The solution lies in creating a special file named __init__.py within the lib subdirectory. This file is crucial for Python to recognize lib as a package, allowing the import of files from within the subdirectory. Once the __init__.py file is in place, files within the lib subdirectory can be imported using the following syntax:

import lib.BoxTime
Copy after login
Copy after login

Alternatively, to avoid referencing BoxTime as lib.BoxTime, you can use the following syntax:

import lib.BoxTime as BT
...
BT.bt_function()
Copy after login

By creating the __init__.py file within the subdirectory, Python recognizes it as a package, facilitating the import of modules from the subdirectory.

The above is the detailed content of How to Import Files from Subdirectories in Python?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template