摘要

编写python项目的时候,最麻烦的是在本地开发可能运行,但是在生产环境下出现导包的问题。整个项目都需要重新进行的导入包。使用python进行程序编写时,经常会使用第三方模块包。这种包我们可以通过python setup install 进行安装后,通过import XXX或from XXX import yyy 进行导入。不过如果是自己编写的依赖包,又不想安装到python的相应目录,可以放到本目录里进行import进行调用;为了更清晰的理清程序之间的关系,例如我们会把这种包放到lib目录再调用。本篇就针对常见的模块调用方法汇总下。

一、同级目录下的文件调用

程序结构如下:-- src|-- mod1.py|-- test1.py
若在程序test1.py中导入模块mod1, 则直接使用import mod1或from mod1 import *;

二、调用子目录下的模块调用

程序结构如下:-- src|-- mod1.py|-- lib|    |-- mod2.py|-- test1.py
这时看到test1.py和lib目录(即mod2.py的父级目录),如果想在程序test1.py中导入模块mod2.py ,可以在lib件夹中建立空文件__init__.py文件(也可以在该文件中自定义输出模块接口),然后使用:from lib.mod2 import *或import lib.mod2.

三、调用上级目录下的文件

程序结构如下:-- src|-- mod1.py|-- lib|    |-- mod2.py|-- sub|    |-- test2.py
这里想要实现test2.py调用mod1.py和mod2.py ,做法是我们先跳到src目录下面,直接可以调用mod1,然后在lib上当下建一个空文件__init__.py ,就可以像第二步调用子目录下的模块一样,通过import  lib.mod2进行调用了。具体代码如下:import sys
sys.path.append("..")
import mod1
import mod2.mod2

博文参考

Python——在不同层级目录import模块的方法相关推荐

  1. python 在不同层级目录import 模块的方法

    http://www.cnitblog.com/seeyeah/archive/2009/03/15/55440.html Python包含子目录中的模块方法比较简单,关键是能够在sys.path里面 ...

  2. python在不同层级目录import模块的方法

    转自:https://www.cnblogs.com/luoye00/p/5223543.html 使用python进行程序编写时,经常会使用第三方模块包.这种包我们可以通过python setup ...

  3. python导入模块的变量_python 环境变量和import模块导入方法(详解)

    1.定义 模块:本质就是.py结尾的文件(逻辑上组织python代码)模块的本质就是实现一个功能 文件名就是模块名称 包: 一个有__init__.py的文件夹:用来存放模块文件 2.导入模块 for ...

  4. 合法的python变量名import_python 环境变量和import模块导入方法(详解)

    1.定义 模块:本质就是.py结尾的文件(逻辑上组织python代码)模块的本质就是实现一个功能 文件名就是模块名称 包: 一个有__init__.py的文件夹:用来存放模块文件 2.导入模块 imp ...

  5. Python教程:Sys 与 Import 模块

    Sys模块: 获取Python有关的环境变量: import sys#得到Python的一些相关路径,环境变量 #其中site-packages目录存放的是一些第三方库 #其中lib目录存放的是一些标 ...

  6. Python档案袋( Sys 与 Import 模块)

    Sys模块: 获取Python有关的环境变量: 1 import sys 2 3 #得到Python的一些相关路径,环境变量 4 #其中site-packages目录存放的是一些第三方库 5 #其中l ...

  7. python如何导入函数_Python导入(import)模块的方法

    1.导入整个模块:模块 是扩展名为.py的文件,包含要导入到程序中的代码.import module_name 2.导入特定的函数from module_name import function_na ...

  8. python 导入其他上级目录的模块

    一种方法导入相对路径: 另一个方法导入绝对路径:因为有将根目录作为导入超点的需求 如图所示: import sys sys.path.appdn("/root/project")

  9. python中getopt函数_python getopt模块使用方法

    python中 getopt 模块,是专门用来处理命令行参数的 getop标准格式: 函数getopt(args, shortopts, longopts = []) shortopts 是短参数   ...

最新文章

  1. mac 使用nvm安装node
  2. ajax获取php echo值,ajax 接受 php echo 与 return 区别
  3. Java 里的thread (线程)简介
  4. c语言 if 多个判断条件执行顺序_C语言之流程控制选择语句
  5. 人工智能AI实战100讲(二)-自动驾驶传感器之激光雷达(三)主流车厂激光雷达的选择及布局
  6. (剑指Offer)面试题5:从尾到头打印链表
  7. Ajax(一)——Ajax基础概念,HTTP头部(重点)
  8. java实体类中有枚举类型_当实体类中entity/DTO/VO等类中,有枚举值,应该怎么输出?...
  9. c语言有较强的网络操作功能吗,《对于C语言的理解》--06级网络班 刘丽君
  10. 不能随意切换的Tab选项卡页面
  11. mybatis动态传入表名、列名
  12. iOS开发月报#3|201809
  13. 原来excel也能做职业数据分析(步骤完整且过程详细)
  14. 做好软件测试的关键是什么,做好测试计划和测试用例的工作的关键是什么?
  15. 【考研英语】作文只是背模板?正确复习姿势了解下
  16. Eclipse在官网下载页面打不开
  17. 一张图读懂极大极小搜索和α-β剪枝
  18. 活动时长计算尝试用Lambada 实现责任链的代码优化
  19. tomcat不能自动解压war包
  20. 虚幻引擎:游戏设计(FPS项目) 一

热门文章

  1. 安全学院“传承文化”暑期实践团抵达西安
  2. 新版devstack查询日志
  3. 查看Java安全证书
  4. modelsim仿真ip核
  5. 工作中写文档的一些经验总结
  6. css+js实现一个跳动的loading动画效果
  7. c语言,一维数组指针
  8. Oracle日期常用函数(SYSDATE)
  9. 光伏储能联合并网系统matlab/simlink仿真
  10. zabbix 监控topsec firewall