📜  从其他脚本调用函数,第 2 部分 (1)

📅  最后修改于: 2023-12-03 15:36:16.289000             🧑  作者: Mango

从其他脚本调用函数 - 第 2 部分

在之前的介绍中,我们了解了如何从一个脚本调用另一个脚本中的函数。本文将进一步探讨如何使用模块化的方式来管理多个脚本。

什么是模块

模块是一种组织 Python 代码的方式。一个模块可以包含多个函数、类、变量等,并且可以被其他脚本导入和使用。

创建模块

创建模块很简单,只需要在一个 Python 脚本中定义函数、类、变量等,并将这些定义封装在一个模块名称下。例如,我们可以创建一个名为 my_module.py 的模块:

# my_module.py

def say_hello():
    print("Hello!")

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

这个模块定义了两个函数 say_helloadd。这些函数将在其他脚本中被导入和使用。

导入模块

要使用一个模块中的函数,需要导入该模块。可以使用 import 语句导入一个模块:

import my_module

my_module.say_hello()
result = my_module.add(1, 2)

print(result) # 3

以上代码导入了 my_module 模块,并分别调用了 say_helloadd 函数。注意,使用模块中的函数需要用 模块名称.函数名称 的形式,如 my_module.add

也可以导入模块中的特定函数,而不是整个模块:

from my_module import add

result = add(3, 4)

print(result) # 7

以上代码只导入了 add 函数,并直接使用了该函数。

模块中的 name

在模块中使用 if __name__ == '__main__': 可以使模块既可以直接运行,也可以在其他脚本中导入使用。

# my_module.py

def say_hello():
    print("Hello!")

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

if __name__ == '__main__':
    print("This module is being run directly.")
else:
    print("This module is being imported.")

以上代码定义了一个 say_hello 函数和一个 add 函数,并在 if __name__ == '__main__': 块中输出该模块是被导入还是被直接运行。注意,当直接运行时,Python 会将该模块的 __name__ 设置为 '__main__'

总结

本文介绍了如何使用模块化的方式来管理多个 Python 脚本,并可以方便地从其他脚本中调用模块中的函数。在实际开发中,模块化是一个非常重要的概念,可以帮助我们更好地组织代码,并提高代码的可维护性。