浅谈python import引入不同路径下的模块

 更新时间:2017年07月11日 09:43:24   投稿:jingxian  
下面小编就为大家带来一篇浅谈python import引入不同路径下的模块。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

python 包含子目录中的模块方法比较简单,关键是能够在sys.path里面找到通向模块文件的路径。

下面将具体介绍几种常用情况:

(1)主程序与模块程序在同一目录下:

如下面程序结构:

`-- src
    |-- mod1.py
    `-- test1.py

若在程序test1.py中导入模块mod1, 则直接使用 import  mod1或from mod1 import *;

(2)主程序所在目录是模块所在目录的父(或祖辈)目录

如下面程序结构:

`-- src
    |-- mod1.py
    |-- mod2
    |   `-- mod2.py
    `-- test1.py

若在程序test1.py中导入模块mod2, 需要在mod2文件夹中建立空文件__init__.py文件(也可以在该文件中自定义输出模块接口); 然后使用 from mod2.mod2 import * 或import mod2.mod2.

(3)主程序导入上层目录中模块或其他目录(平级)下的模块

如下面程序结构:

`-- src
    |-- mod1.py 
    |-- mod2
    |   `-- mod2.py
    |-- sub
    |   `-- test2.py
    `-- test1.py

若在程序test2.py中导入模块mod1和mod2。首先需要在mod2下建立__init__.py文件(同(2)),src下不必建立该文件。然后调用方式如下:

下面程序执行方式均在程序文件所在目录下执行,如test2.py是在cd sub;之后执行python test2.py

而test1.py是在cd src;之后执行python test1.py; 不保证在src目录下执行python sub/test2.py成功。

   import sys
   sys.path.append("..")
   import mod1
   import mod2.mod2

 (4)从(3)可以看出,导入模块关键是能够根据sys.path环境变量的值,找到具体模块的路径。

这里仅介绍上面三种简单情况。

以上这篇浅谈python import引入不同路径下的模块就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python如何对链表操作

    python如何对链表操作

    这篇文章主要介绍了python如何对链表操作,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-10-10
  • 常用python爬虫库介绍与简要说明

    常用python爬虫库介绍与简要说明

    本文介绍了一些常用的python爬虫库其中包括python网络库,python网络爬虫框架,python HTML解析,python文本处理,python 自然语言处理,python 浏览器模拟等各种常用的python库
    2020-01-01
  • Python练习之操作SQLite数据库

    Python练习之操作SQLite数据库

    这篇文章主要介绍了Python练习之操作SQLite数据库,主要通过三个问题如何创建SQLite数据库?如何向SQLite表中插入数据?如何查询SQLite表中的数据?展开文章主题详情,需要的朋友可以参考一下
    2022-06-06
  • Python实现的特征提取操作示例

    Python实现的特征提取操作示例

    这篇文章主要介绍了Python实现的特征提取操作,涉及Python基于sklearn库的变量特征提取相关操作技巧,需要的朋友可以参考下
    2018-12-12
  • python之excel文件(.xls文件)处理方式

    python之excel文件(.xls文件)处理方式

    这篇文章主要介绍了python之excel文件(.xls文件)处理方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Python 通过requests实现腾讯新闻抓取爬虫的方法

    Python 通过requests实现腾讯新闻抓取爬虫的方法

    今天小编就为大家分享一篇Python 通过requests实现腾讯新闻抓取爬虫的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-02-02
  • 关于tf.reverse_sequence()简述

    关于tf.reverse_sequence()简述

    今天小编就为大家分享一篇关于tf.reverse_sequence()简述,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python学习之12个常用基础语法详解

    Python学习之12个常用基础语法详解

    这篇文章主要为大家介绍了12个Python小案例,包含了日常开发中非常实用的语法,快来跟随小编一起学习一下,看看自己都会多少个呢
    2022-02-02
  • 使用Python测试Ping主机IP和某端口是否开放的实例

    使用Python测试Ping主机IP和某端口是否开放的实例

    今天小编就为大家分享一篇使用Python测试Ping主机IP和某端口是否开放的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python 3.x基础实战检查磁盘可用空间

    Python 3.x基础实战检查磁盘可用空间

    这篇文章主要为大家介绍了Python 3.x基础实战之检查磁盘可用空间实现,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05

最新评论