python - 创建一个自定义模块

模块就是文件,例如 python 的模块就是.py。如果函数就相当于积木,那么模块就是很多积木,因为模块是由很多函数组成的。当你调用一个模块,你就可以使用它本身的方法。模块主要分第三方模块和自定义模块。

第三方模块#

第三方模块需要下载才能调用,这是由其它 python 开发者开发的模块。python 有着对第三方模块的强大支持,第三方模块有常见的 pygame,request,panda 等等。

自定义模块#

一看标题就知道这篇文章是和自定义模块有关,如果你创建了一个.py 文件,你就可以在其它文件里使用 import 导入并调用里面的方法。

现在我们就开始来创建一个自定义模块。首先,在随便一个目录下创建两个.py 文件,一个叫 my_module.py,另外一就叫 test_module.py。
图片
(本人在 C 盘目录下创建的,所以这篇文章后面也将会用到 C 盘的目录)

点进我们的 my_module.py。我们可以创建一个在里面 hello () 函数,当被调用就说 “hello,world!”。我们还可以再加上一个 bye () 函数,当被调用就说 “bye-bye,world”:gun:

代码

def hello():
    print("hello,world!")
def bye():
    print("bye-bye,world!")

如果你运行这段代码,没报错,而且打印出了 “hello,world!” 和 “bye-bye,world!”,那么就试着在 test_module.py 上尝试运行这份文件的代码。

关闭 my_module.py, 点进 test_module.py。不要复制代码,在文件的开头使用,输入这段代码

import my_module  #导入my_module.py的代码
hello() 
bye()

尝试运行,这个时候,程序就会报 NameError 错误。因为程序所找的 hello () 和 bye () 是在本程序里找,并没有在 my_module 这个文件里找。
解决这个苦难可以:

第一种方法#

使用 from my_module import hello,bye
这个方法就是说从 my_module 里面导入出 hello () 和 bye (), 在接下来的代码中,调用这两个函数就行了。

from my_module import hello
hello()
bye()

第二种方法#

使用 my_module.xxx ()

import my_module
my_module.hello()
my_module.bye()

现在大家知道如何创建自定义模块了吗?如果还有关于本章的问题请在评论区提出来。

本作品采用《CC 协议》,转载必须注明作者和本文链接
coder Derek
讨论数量: 1

前辈,我在调用这里遇到了问题,from module_name import function 和直接 import module 后运行结果都显示错误:no module named 'module_name'。请问咋解决呀

1年前 评论