创建和访问 Python 包

pythonserver side programmingprogramming更新于 2026/2/16 23:40:17

在本文中,我们将了解 Python 中的包。包帮助我们以有组织的层次结构构建包和模块。让我们看看如何在 Python 中创建包。

创建包

我们在目录中包含了一个 __init__.py 文件,以告诉 Python 当前目录是一个包。每当您想要创建包时,您都必须在目录中包含 __init__.py 文件。您可以在里面编写代码,也可以根据需要将其留空。它不会打扰 Python。

按照以下步骤在 Python 中创建一个包

  • 创建一个目录并在其中包含一个 __init__.py 文件,以告诉 Python 当前目录是一个 包。
  • 包含您想要的其他子包或文件。
  • 接下来,使用有效的 import 语句访问它们。

让我们创建一个具有以下结构的简单包。

包(大学)

  • __init__.py
  • student.py
  • faculty.py

转到笔记本电脑或台式机中的任意目录并创建上述文件夹结构。创建上述文件夹结构后,在相应的文件中包含以下代码。

示例

# student.py
class Student:

   def __init__(self, student):
      self.name = student['name']
      self.gender = student['gender']
      self.year = student['year']

   def get_student_details(self):
      return f"Name: {self.name}\nGender: {self.gender}\nYear: {self.year}"


# faculty.py
class Faculty:

   def __init__(self, faculty):
      self.name = faculty['name']
      self.subject = faculty['subject']

   def get_faculty_details(self):
      return f"Name: {self.name}\nSubject: {self.subject}"

We have the above in the student.py and faculty.py files. Let's create another file to access those classed inside it. Now, inside the package directory create a file named testing.py and include the following code.

示例

# testing.py
# 从相应的文件导入 Student 和 Faculty 类
from student import Student
from faculty import Faculty

# 为 student 和 faculty 创建字典
student_dict = {'name' : 'John', 'gender': 'Male', 'year': '3'}
faculty_dict = {'name': 'Emma', 'subject': 'Programming'}

# 创建 Student 和 Faculty 类的实例
student = Student(student_dict)
faculty = Faculty(faculty_dict)

# 获取并打印 student 和 faculty 的详细信息
print(student.get_student_details())
print()
print(faculty.get_faculty_details())

如果你运行testing.py文件,那么你将得到以下结果。

输出

Name: John
Gender: Male
Year: 3

Name: Emma
Subject: Programming

我们已经了解了如何在 Python 中创建和访问包。这是一个简单的包。包内可能有很多子包和文件。让我们看看如何访问子包模块。

创建具有以下结构的目录

  • Package (university)
    • __init__.py
    • Subpackage (student)
      • __init__.py
      • main.py
      • ...
    • testing.py

复制上述学生代码并将其放在此处。现在,让我们看看如何在 testing.py 文件中访问它。在 testing.py 文件中添加以下内容。

示例

# testing.py
from student.main import Student

# 为学生创建字典
student_dict = {'name' : 'John', 'gender': 'Male', 'year': '3'}

# 创建 Student 类的实例
student = Student(student_dict)

# 获取并打印学生详细信息
print(student.get_student_details())

如果运行 testing.py 文件,则会得到以下结果。

输出

Name: John
Gender: Male
Year: 3

我们使用 点 (.) 从子包 student 内的 ma​​in.py 文件中访问了 Student 类。您可以根据包结构进行尽可能深入的了解。

结论

如果您对本教程有任何疑问,请在评论部分中提及。


相关文章


有用资源