Python 模块:创建、导入和使用


在 Python 中,模块是一个包含 Python 代码的文件。模块可以定义函数、类和变量,甚至可以包含可执行代码。使用模块有助于组织代码、提高可维护性和重用性。以下是关于如何创建、导入和使用模块的详细指南。

1. 创建模块

创建模块非常简单,只需编写一个 Python 文件即可。假设我们创建一个名为 mymodule.py 的模块:

# mymodule.py

def greet(name):
    return f"Hello, {name}!"

def add(a, b):
    return a + b

class MyClass:
    def __init__(self, value):
        self.value = value

    def display(self):
        print(f"Value: {self.value}")

2. 导入模块

要使用上述模块中的函数、类或变量,可以在另一个 Python 脚本中导入该模块。有多种导入方式:

导入整个模块

import mymodule

print(mymodule.greet("Alice"))
print(mymodule.add(5, 3))

obj = mymodule.MyClass(10)
obj.display()

导入模块中的特定函数或类

from mymodule import greet, add, MyClass

print(greet("Bob"))
print(add(10, 20))

obj = MyClass(20)
obj.display()

使用别名导入

import mymodule as mm

print(mm.greet("Charlie"))
print(mm.add(15, 5))

obj = mm.MyClass(30)
obj.display()

3. 使用模块中的内容

导入模块后,就可以使用模块中的函数、类和变量。以下是一些示例:

使用函数

import mymodule

result = mymodule.add(4, 7)
print(f"4 + 7 = {result}")

使用类

from mymodule import MyClass

obj = MyClass(42)
obj.display()

4. 使用标准库模块

Python 提供了丰富的标准库模块,可以直接导入并使用。例如,使用 math 模块:

import math

print(math.sqrt(16))  # 输出 4.0
print(math.pi)        # 输出 3.141592653589793

5. 创建包

包是包含多个模块的目录。包中必须包含一个 __init__.py 文件(即使是空文件),以告诉 Python 这个目录是一个包。以下是创建包的示例结构:

mypackage/
    __init__.py
    module1.py
    module2.py

导入包中的模块

from mypackage import module1, module2

result = module1.some_function()
module2.some_other_function()

或者:

from mypackage.module1 import some_function
from mypackage.module2 import some_other_function

result = some_function()
some_other_function()

6. 示例

假设 mypackage/module1.py 内容如下:

# mypackage/module1.py

def some_function():
    print("This is some function in module1.")

mypackage/module2.py 内容如下:

# mypackage/module2.py

def some_other_function():
    print("This is some other function in module2.")

你可以创建一个脚本 test.py 来测试:

from mypackage.module1 import some_function
from mypackage.module2 import some_other_function

some_function()
some_other_function()

运行 test.py 会输出:

This is some function in module1.
This is some other function in module2.

以上就是在 Python 中创建、导入和使用模块的基本方法。通过模块和包的使用,可以使你的代码更清晰、更易维护。


原文链接:codingdict.net