python引入导入自定义模块和外部文件的实例


Posted in Python onJuly 24, 2017

项目中想使用以前的代码,或者什么样的需求致使你需要导入外部的包

如果是web 下,比如说django ,那么你新建一个app,把你需要导入的说用东东,都写到这个app中,然后在setting中的app也配上基本就ok了

如果是本地代码,可以有几种方式,

1、这种最简单,也可能最不实用,将你的外部文件放到跟需要调用外部文件的文件同一个包下,同一目录

folder

------toinvoke.py

------tobeinvoded.py

这样在toinvoke.py 中引入

import toveinvoked 或 from tobeinvoked import *

即可

2、你的其他文件不是单个文件,或者不能如上所说放到同一目录下,而是在不同目录中,子目录

folder

------tobeinvodedA.py

------tobeinvodedB.py

------tobeinvodedC.py

toinvoke.py

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

folder #文件夹 现在的性质为一个python包package

------__init__.py

------tobeinvoded.py

------tobeinvodedA.py

------tobeinvodedB.py

------tobeinvodedC.py

toinvoke.py

这样在toinvoke.py 中引入

import folder.toveinvoked 或 from folder.tobeinvoked import *

即可

3、同理,如果是如下的情况,folderB中的模块要调用folderA中的模块,方法同上,有什么改变,你已经知道了

folderA

------tobeinvoded.py

------tobeinvodedA.py

------tobeinvodedB.py

------tobeinvodedC.py

folderB

--------toinvoke.py

这样在toinvoke.py 中引入

import folder.toveinvoked 或 from folder.tobeinvoked import *

即可

4、将要被调用的代码拷贝到$PYTHONHOME$\Lib\site-packages 下面,这个就跟Eclipse插件安装差不多

5、在$PYTHONHOME$\Lib\site-packages 下面新建一个.pth文件,比如说是MyPackage.pth,里面的内容是你的包的绝对路径比如:E:/PythonPrj

那么,在E:/PythonPrj下的所有包都可以按照包所在的相对路径引入,这个跟Eclipse插件安装的link 方式差不多

6、跟上面的差不多,也可以加个环境变量,这个就不多说了

总结、看看Python的包搜索路径

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

1. 程序所在的文件夹

2. 标准库的安装路径

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

将自定义库的路径添加到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 相关文章推荐
wxPython学习之主框架实例
Sep 28 Python
python读取word文档的方法
May 09 Python
Python中对元组和列表按条件进行排序的方法示例
Nov 10 Python
利用python程序帮大家清理windows垃圾
Jan 15 Python
python编程之requests在网络请求中添加cookies参数方法详解
Oct 25 Python
Python插件virtualenv搭建虚拟环境
Nov 20 Python
Flask-Mail用法实例分析
Jul 21 Python
wxpython绘制圆角窗体
Nov 18 Python
pytorch常见的Tensor类型详解
Jan 15 Python
Python装饰器的应用场景代码总结
Apr 10 Python
keras实现图像预处理并生成一个generator的案例
Jun 17 Python
Django框架安装及项目创建过程解析
Sep 14 Python
Python3.X 线程中信号量的使用方法示例
Jul 24 #Python
Python基于list的append和pop方法实现堆栈与队列功能示例
Jul 24 #Python
老生常谈进程线程协程那些事儿
Jul 24 #Python
Django模板变量如何传递给外部js调用的方法小结
Jul 24 #Python
详解Python list 与 NumPy.ndarry 切片之间的对比
Jul 24 #Python
apache部署python程序出现503错误的解决方法
Jul 24 #Python
Python元组操作实例分析【创建、赋值、更新、删除等】
Jul 24 #Python
You might like
在PHP中设置、使用、删除Cookie的解决方法
2013/05/06 PHP
Yii框架响应组件用法实例分析
2019/09/04 PHP
JavaScript 判断判断某个对象是Object还是一个Array
2010/01/28 Javascript
一个简单的js鼠标划过切换效果
2010/06/30 Javascript
javascript的函数、创建对象、封装、属性和方法、继承
2011/03/10 Javascript
读jQuery之八 包装事件对象
2011/06/21 Javascript
onbeforeunload与onunload事件异同点总结
2013/06/24 Javascript
让js弹出窗口居前显示的实现方法
2013/07/10 Javascript
js将json格式内容转换成对象的方法
2013/11/01 Javascript
Angular ng-repeat 对象和数组遍历实例
2016/09/14 Javascript
JS正则表达式学习之贪婪和非贪婪模式实例总结
2016/12/26 Javascript
为输入框加入数字js校验代码分享
2017/11/02 Javascript
ES6中数组array新增方法实例总结
2017/11/07 Javascript
详解使用webpack打包编写一个vue-toast插件
2017/11/08 Javascript
JavaScript基础心法 数据类型
2018/03/05 Javascript
jQuery中常用动画效果函数知识点整理
2018/08/19 jQuery
微信小程序 多行文本显示...+显示更多按钮和收起更多按钮功能
2019/09/26 Javascript
浅谈layui数据表格判断问题(加入表单元素),设置单元格样式
2019/10/26 Javascript
Python 解析XML文件
2009/04/15 Python
Python简明入门教程
2015/08/04 Python
python生成验证码图片代码分享
2016/01/28 Python
python 实现tar文件压缩解压的实例详解
2017/08/20 Python
Python实现基于TCP UDP协议的IPv4 IPv6模式客户端和服务端功能示例
2018/03/22 Python
Python 抓取微信公众号账号信息的方法
2019/06/14 Python
python中doctest库实例用法
2020/12/31 Python
CSS3点击按钮实现背景渐变动画效果
2016/10/19 HTML / CSS
HTML5 File接口在web页面上使用文件下载
2017/02/27 HTML / CSS
经典洗发水广告词
2014/03/13 职场文书
中职生自荐信范文
2014/06/15 职场文书
入党政审材料范文
2014/12/24 职场文书
学术研讨会欢迎词
2015/01/26 职场文书
商务考察邀请函模板
2015/02/02 职场文书
领导干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
2017元旦晚会开幕词
2016/03/03 职场文书
中国古代史学名著《战国策》概述
2019/08/09 职场文书
Python上下文管理器Content Manager
2021/06/26 Python