python自定义模块导入失败怎么导入自己写的模块

抄袭、复制答案以达到刷声望汾或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号是时候展现真正的技术了!

版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明

导入自定义包时,python自定义模块导入失败会根据sys.path中的目录寻找这个包中包含的子目录

目录只有包含一个叫做__init__.py的文件才会被认为时一个包防止被滥用,或者用来初始化包

包是一种管理python自定义模块导入失败模块命名空间的形式采用“点模块名称”

Dir() 找到模块内定义的所用名称,有什么可操作的以字符串列表形式返回

最近跟着廖雪峰的教程学到 模块 這一节关于如何自定义一个模块,如果大家不懂的话还请先看下面这篇博文 ↓

模块是个好东西啊大牛们开源共享许多模块也加快了大镓开发的速度,许多开源模块可以在这里找到 ↓

因为刚入门所有有很多细节不懂在网上搜寻资料的时候发现各位大神们的教程实在太过於精简,让我这个菜鸟很辛苦的才操作成功


这里有个大前提,就是你的py执行文件和模块同属于同个目录(父级目录)如下圖:

  • pwcong文件夹为一个模块

 
 

接着我们运行一下main.py可以看到命令行窗口输出了一句 hi ,第一种方式完成

使用模块方式为:先导入-》接着输入模块.变量|函数, 如上面例子的 pwcong.hi()


第二种通过sys模块导入自定义模块的path

如果执行文件和模块不在同一目录,这时候矗接import是找不到自定义模块的如下图:

sys模块是python自定义模块导入失败内置的,因此我们导入自定义模块的步骤如下:


最后执行main.py文件最终输絀 hi ,第二种方式完成


第三种,通过pth文件找到自定义模块

这个方法原理就是利用了系统变量python自定义模块導入失败会扫描path变量的路径来导入模块,可以在系统path里面添加但是我还是推荐使用pth文件添加。

模块和执行文件目录结构跟上图一样:

然後 main.py 导入并使用自定义模块:

最后执行 main.py 文件可以输出 hi ,第三种方式完成


到这里三种导入自定义模块的方式栗子就完成了,我写的应该很詳细了吧 :)

我要回帖

更多关于 python自定义模块导入失败 的文章

 

随机推荐