python添加模块搜索路径和包的导入方法


Posted in Python onJanuary 19, 2019

方法一:函数添加

1 import sys

2 查看sys.path

3 添加sys.path.append("c:\\")

方法二:修改环境变量

w用户可以修改系统环境变量PYTHONPATH

方法三:增加.pth文件,推荐!

在site-packages添加一个路径文件,如mypkpath.pth,必须以.pth为后缀,写上你要加入的模块文件所在的目录名称就是了。

1 windows

c:\python27\site-packages

# 我们的学员把pth文件直接放在c:\python27

# (或其他python安装目录)目录下测试也是有效的

# 2015.9.23

2 linux(ubuntu)

/usr/local/lib/python2.7/dist-packages (note by shanql, 我是放在这个目录下有效的,所添加的目录一定要存在,不存在则会不成功)

2 linux(redhat)

/usr/lib/python2.7/site-packages

包的调用

为了避免模块名冲突,Python又引入了按目录来组织模块的方法,称为包(Package)。

python添加模块搜索路径和包的导入方法

每一个包目录下面都会有一个__init__.py的文件,这个文件是必须存在的,否则,Python就把这个目录当成普通目录(文件夹),而不是一个包。__init__.py可以是空文件,也可以有Python代码,因为__init__.py本身就是一个模块,而它的模块名就是对应包的名字。调用包就是执行包下的__init__.py文件。

跨包调用(当前目录下有modulepack1包):

from modulepack1[.modulepack2] import module

如果当前目录下能够找到要调用的包,可以直接from包import模块,如果当前目录找不到要调用的包,需要向sys.path添加包的所在绝对路径。

import一个包名,就等于执行了这个包下的__init__文件。

示例:

python添加模块搜索路径和包的导入方法

在nod1里import hello是找不到的,需要手动添加包路径,如果找到那是因为pycharm给加了不必要的路径,以命令行执行为准。

import sys,os
BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))#__file__获取执行文件相对路径,整行为取上一级的上一级目录
sys.path.append(BASE_DIR)
#添加路径
import hello
hello.hello1()

模块调用测试

if __name__=='__main__':#__name__方法判断
  print('ok')

在一个py模块直接执行print(__name__)会输出__main__,表示当前这个文件属于执行文件,如果从其他的py模块中导入一个py模块,执行被导入的py模块中的print(__name__)会输出被导入的模块的模块名称,那么if判断就不会成功,所以导入的时候不会执行判断内的代码。

主要用在调试功能,即一个模块被调用的时候不执行内容,而自己调试模块的时候可以顺利的执行模块内容。

以上这篇python添加模块搜索路径和包的导入方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用ctypes模块调用windowsapi获取系统版本示例
Apr 17 Python
Python遍历zip文件输出名称时出现乱码问题的解决方法
Apr 08 Python
python数据类型_字符串常用操作(详解)
May 30 Python
python 删除非空文件夹的实例
Apr 26 Python
利用Python读取txt文档的方法讲解
Jun 23 Python
tensorflow实现简单逻辑回归
Sep 07 Python
Python数据分析pandas模块用法实例详解
Nov 20 Python
PyCharm下载和安装详细步骤
Dec 17 Python
Python写捕鱼达人的游戏实现
Mar 31 Python
python怎么自定义捕获错误
Jun 29 Python
一文带你了解Python 四种常见基础爬虫方法介绍
Dec 04 Python
python中pivot()函数基础知识点
Jan 03 Python
python引用(import)某个模块提示没找到对应模块的解决方法
Jan 19 #Python
解决Python 命令行执行脚本时,提示导入的包找不到的问题
Jan 19 #Python
在pycharm 中添加运行参数的操作方法
Jan 19 #Python
解决项目pycharm能运行,在终端却无法运行的问题
Jan 19 #Python
Pycharm以root权限运行脚本的方法
Jan 19 #Python
Python自定义一个类实现字典dict功能的方法
Jan 19 #Python
解决pycharm工程启动卡住没反应的问题
Jan 19 #Python
You might like
php生成短网址示例
2014/05/05 PHP
PHP SPL标准库之接口(Interface)详解
2015/05/11 PHP
php微信开发之带参数二维码的使用
2016/08/03 PHP
地震发生中逃生十大法则
2008/05/12 Javascript
说说掌握JavaScript语言的思想前提想学习js的朋友可以看看
2009/04/01 Javascript
js indexOf()定义和用法
2012/10/21 Javascript
JS将表单导出成EXCEL的实例代码
2013/11/11 Javascript
jQuery.lazyload+masonry改良图片瀑布流代码
2014/06/20 Javascript
JQuery创建DOM节点的方法
2015/06/11 Javascript
js查看一个函数的执行时间实例代码
2015/09/12 Javascript
微信小程序实现拖拽 image 触摸事件监听的实例
2017/08/17 Javascript
webpack结合express实现自动刷新的方法
2019/05/07 Javascript
python将html转成PDF的实现代码(包含中文)
2013/03/04 Python
Python2.x中文乱码问题解决方法
2015/06/02 Python
启动targetcli时遇到错误解决办法
2017/10/26 Python
python微信跳一跳游戏辅助代码解析
2018/01/29 Python
对python中的xlsxwriter库简单分析
2018/05/04 Python
使用python爬取抖音视频列表信息
2019/07/15 Python
如何使用python传入不确定个数参数
2020/02/18 Python
Python通过Tesseract库实现文字识别
2020/03/05 Python
Python环境下安装PyGame和PyOpenGL的方法
2020/03/25 Python
Python更换pip源方法过程解析
2020/05/19 Python
python 使用elasticsearch 实现翻页的三种方式
2020/07/31 Python
纯CSS3实现的8种Loading动画效果
2014/07/05 HTML / CSS
西班牙最好的在线购买葡萄酒的商店:Vinoseleccion
2019/10/30 全球购物
幼儿园母亲节活动方案
2014/03/10 职场文书
男女朋友协议书
2014/04/23 职场文书
学校春季防火方案
2014/06/08 职场文书
幼儿园大班区域活动总结
2014/07/09 职场文书
党支部三会一课计划
2014/09/24 职场文书
出纳工作检讨书
2014/10/18 职场文书
三提三创主题教育活动查摆整改措施
2014/10/25 职场文书
美丽的大脚观后感
2015/06/03 职场文书
收入证明申请书
2015/06/12 职场文书
春节随笔
2015/08/15 职场文书
2016教师学习教育法心得体会
2016/01/19 职场文书