创建和访问 Python 包
在本文中,我们将了解 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 内的 main.py 文件中访问了 Student 类。您可以根据包结构进行尽可能深入的了解。
结论
如果您对本教程有任何疑问,请在评论部分中提及。
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

