iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python如何导入自己的模块
  • 477
分享到

python如何导入自己的模块

2024-04-02 19:04:59 477人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录如何导入自己的模块1.自定义模块与所需要调用自定义模块的文件在同一文件夹下2.自定义模块与所需要调用自定义模块的文件不在同一文件夹下3.找到本地库的路径4.手动给python添加

如何导入自己的模块

在实际的编程生活当中,我们除了会去import已经存在的包外,当然还会偶尔自定义一些模块,然后来导入,其实一般而言,自定义的模块也就是一系列的脚本,具体的,自己写好了脚本,然后导入,导入的情况分为以下情况:

1.自定义模块与所需要调用自定义模块的文件在同一文件夹下

这时的调用就较为简单了,直接导入即可

比如说我想要在learnpandas中导入m1.py,只需要在learnpandas脚本开头声明import m1.py即可

2.自定义模块与所需要调用自定义模块的文件不在同一文件夹下

其实这个的话,如果不怕麻烦的话可以用1中的方法,把需要导入的文件一个一个手动拖到当前文件夹中,,,当然这个方法时比较复杂的,尤其是要导入的文件较多的时候,,,,

这个时候有一个更聪明的方法

假设下图是我们需要导入的文件目录

在这种情况下,我们在folder中新建一个__init__.py文件,此时的folder不再是一个普通的文件夹,而是一个包 package

在这个时候,想导入哪一个文件的话就只需在文件开头import folder.filename即可(记得要先将自定义库路径添加到Python的库路径中)

3.找到本地库的路径

然后将文件拷进去即可

4.手动给python添加搜索路径

具体做法是:

在python安装目录的\Lib\site-packages文件夹中建立一个.pth文件,内容为自己写的库绝对路径

- - - - - - - - - - - - - - - - - 分割线- - - - - - - - - - - - - - - - -

将自定义库的路径添加到Python的库路径中去,有如下两种方法:

1. 动态的添加库路径。在程序运行过程中修改sys.path的值,添加自己的库路径

import sys
sys.path.append(r'your_path') 

2. 在Python安装目录下的\Lib\site-packages文件夹中建立一个.pth文件,内容为自己写的库路径。

示例如下

E:\\work\\Python\\Http

E:\\work\\Python\\logging

- - - - - - - - - - - - - - - - - 分割线- - - - - - - - - - - - - - - - -

在这里说一句Python的包搜索路径:

Python会在以下路径中搜索它想要寻找的模块:

1. 程序所在的文件夹

2. 标准库的安装路径

3. 操作系统环境变量PYTHONPATH所包含的路径

导入本地模块报错的问题

很多时候,我们在写一个python项目时,都会分模块来写,在一个模块中导入自己写的另一个模块,最后在写一个启动程序,但运行启动程序时往往会报错说找不到你写的模块,对此,这里教大家一种通用且正规的python项目组织结构,基本都能解决这种找不到本地模块的问题。

以下图为例说明

在这里插入图片描述

首先是创建一个项目文件夹:myproject ,这里面包括启动文件start.py、README.md文件以及你的项目文件myproject文件夹。这就是基本的项目结构。

这样你就能在myproject文件夹里面的py文件里使用相对路径导入其他文件夹下的模块了。

其实,scrapy项目的目录结构也大致是这样的,大家可以看看创建scrapy项目时的目录结构。

mytask.py

在这里插入图片描述

这里就很方便使用 “.” 和 “..” 来表示当前路径和上一级路径了start.py

在这里插入图片描述

这里要注意,启动文件start.py中不能使用".“和”.."等来导入本地模块,因为主模块(启动文件)不能使用相对导入。

最后,只要在命令行输入python start.py就可以运行程序了。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: python如何导入自己的模块

本文链接: https://www.lsjlt.com/news/138799.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作