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环境变量的值,找到具体模块的路径。这里仅介绍上面三种简单情况。
评论:
win下面cmd当前目录上运行python交互的时候, 当前目录如果是个python包,要在当前交互引入它, 也需要 sys.path.append("…"), 不过我个人的做法通常是sys.path.insert(0,"…")
[code]
c:/py25>cd sub
c:/py25>python
#import sub #这里提示找不到
import sys
sys.path.insert(0,’…’) #或者sys.path.append("…")
import sub #这里引入成功
[/code]
貌似是大蛇的当前目录是"能识儿子不识父亲"的,
也就是要引入当前包的父包的话,要sys.path.insert(0,’…/…’)了…
来源:https://blog.csdn.net/IAlexanderI/article/details/71429474
python import自定义模块方法相关推荐
- python导入自定义模块_ubuntu下Python导入自定义模块的方法
ubuntu下Python导入自定义模块的方法 当在python程序中导入自定义模块时,若出现"Import Error:no module named xxx"表明系统在pyth ...
- vscode使用python导入自定义模块
vscode中使用python引入自定义模块 在使用vscode的时候写了一些自定义模块,使用import导入模块的时候发现会出现 "No Module Name xxx(模块名称)&quo ...
- python 导入自定义模块
python 导入自定义模块 文章目录 python 导入自定义模块 相同文件夹下 文件目录 `module1.py` 自定义模块 `demo.py` 引用文件 不同文件夹下 文件目录 `__init ...
- python导入xlsxwriter要安装什么吗_windows下安装Python的XlsxWriter模块方法
windows下安装Python的XlsxWriter模块方法
- python如何自定义模块_python自定义模块和开源模块使用方法
模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...
- python基础--自定义模块、import、from......import......
自定义模块.import.from......import...... 1)模块的定义和分类 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例 ...
- python导入自定义模块_如何Import自定义的Python模块?
原标题:如何Import自定义的Python模块? 实际工作中,经常要用的功能能不能像导入python模块一样,通过import导入呢?答案当然是可以的,本文教你如何做,大家一起来学习吧! 背景 在实 ...
- Python import导入模块与函数方法 Python语言基础【1】
1 Python的语言基础 导入模块 在Python代码中导入模块需要使用 import语句语法结果如下 import module_name 使用模块中函数的语法如下 module_name.fun ...
- Python入门--模块,from,import,自定义模块
#模块 #函数与模块的关系-->一个模块中可以包含N多个函数 #在Python中一个扩展名为.py的文件就是模块 #使用模块的好处 #1.方便其他程序和脚本的导入并使用 #2.避免函数名和变量名 ...
最新文章
- 'ScriptModel' object has no attribute 'save'
- android 仿京东toolbar,仿京东商城系列2------自定义toolbar
- entity.Database.SqlQuery() 和entity.Database.SqlCommand()
- python拟牛顿法迭代点绘制_拟牛顿法python
- 【Git笔记3】关于撤销、删除、恢复的那些事儿
- JAVA编译时出现的错误提示
- 一个图片展示效果的站点
- C语言的格式控制符问题
- WPF(Windows Presentation Foundation)Overview
- “请求未在nginx中配置的域名时,给浏览器返回508错误码”配置示例
- ORCLE INNODB 博客与 innodb_lru_scan_depth
- CentOS下使用TUN/TAP虚拟网卡的基本教程
- EDA技术实用教程 | 复习十 | 移位寄存器的行为级描述
- 【CentOS】scala安装
- 强化学习第7章——基于策略的强化学习
- How to cover an IE windowed control (Select Box, ActiveX Object, etc.) with a DHTML layer.
- html实现鼠标跟随,html5实现鼠标跟随
- amixer: Unable to find simple control 'Master',0
- Xshell的使用方法(初学者)
- 关于Springboot中跨域问题的解决(Response to preflight request doesn‘t pass access control check)
热门文章
- iOS项目的命名规范
- Storm计算结果是怎样存放的
- 基于Visua C++2010 与 Windows 7 SDK开发windows7 Shell应用(1)-搜索文件夹
- 23种设计模式-备忘录模式
- 如何把Spring Boot 项目变成一个XML配置的Spring项目
- Java 集合系列04之 fail-fast总结(通过ArrayList来说明fail-fast的原理、解决办法)
- Android6.0权限适配及兼容库的实现
- Nginx 的 Echo 模块 —— echo-nginx-module(转)
- android ListView 九大重要属性详细分析
- Linux线程同步读写锁 rwlock