python shell命令行中import多层目录下的模块操作


Posted in Python onMarch 09, 2020

首先在文件夹中添加_init_.py文件,即使是空文件也可以,多层文件夹,每层文件夹中都要添加。

比如我要import,a文件夹中,b文件夹下的 c.py

我就需要在a,b文件夹中都添加_init_.py文件。

然后引入方式:import a.b.c

然后在调用c.py的函数时,直接c.f()是不行的,需要a.b.c.f()。

当然也可以先写 c = a.b.c,然后再c.f()。

python shell命令行中import多层目录下的模块操作

补充知识:Python IDLE shell中引入模块

安装了Python之后,会自带一个Python IDLE,打开之后就是一个Python shell, 在这个Python shell中想引入模块,也就是自己写好的python脚本文件的话,有个路径问题。

如果你把文件放到安装目录的默认shell目录下面,那么引入是没问题的,打开File菜单下的Path Browser,可以看到。

如果你的python脚本文件是放在自己的目录下,比如我的D:\Projects\python目录下,那么引入是会失败的:

>>> import fibo
Traceback (most recent call last):
 File "<pyshell#0>", line 1, in <module>
  import fibo
ModuleNotFoundError: No module named 'fibo'
>>>

那么,如何添加我们自己的项目目录呢?就是sys.path这个变量

Python 3.7.1 (v3.7.1:260ec2c36a, Oct 20 2018, 14:57:15) [MSC v.1915 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>> import sys
>>> sys.path.append("D:\Projects\python")
>>> sys.path
['', 'D:\\Program Files\\Python37\\Lib\\idlelib', 'D:\\Program Files\\Python37\\python37.zip', 'D:\\Program Files\\Python37\\DLLs', 'D:\\Program Files\\Python37\\lib', 'D:\\Program Files\\Python37', 'D:\\Program Files\\Python37\\lib\\site-packages', 'D:\\Projects\\python']
>>> import fibo
>>> fibo.fib(1000)
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987

先import sys,引入sys这个模块

然后添加我们的目录到sys.path这个列表中就可以了,接下来我们就可以引入我们项目文件夹中的模块也就是我们的脚本文件了。

以上这篇python shell命令行中import多层目录下的模块操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python程序设计入门(3)数组的使用
Jun 16 Python
Python实现多行注释的另类方法
Aug 22 Python
python复制与引用用法分析
Apr 08 Python
python 迭代器和iter()函数详解及实例
Mar 21 Python
浅析Git版本控制器使用
Dec 10 Python
在python里面运用多继承方法详解
Jul 01 Python
python进阶之自定义可迭代的类
Aug 20 Python
tensorflow如何批量读取图片
Aug 29 Python
使用virtualenv创建Python环境及PyQT5环境配置的方法
Sep 10 Python
基于python3监控服务器状态进行邮件报警
Oct 19 Python
Python中pass的作用与使用教程
Nov 13 Python
详解pandas赋值失败问题解决
Nov 29 Python
使用Python获取当前工作目录和执行命令的位置
Mar 09 #Python
python爬虫开发之Request模块从安装到详细使用方法与实例全解
Mar 09 #Python
Python如何存储数据到json文件
Mar 09 #Python
找Python安装目录,设置环境路径以及在命令行运行python脚本实例
Mar 09 #Python
Python运行异常管理解决方案
Mar 09 #Python
Python爬虫程序架构和运行流程原理解析
Mar 09 #Python
python opencv 图像边框(填充)添加及图像混合的实现方法(末尾实现类似幻灯片渐变的效果)
Mar 09 #Python
You might like
JAVA/JSP学习系列之六
2006/10/09 PHP
单一index.php实现PHP任意层级文件夹遍历(Zjmainstay原创)
2012/07/31 PHP
php class中public,private,protected的区别以及实例分析
2013/06/18 PHP
php验证是否是md5编码的简单代码
2014/04/01 PHP
thinkPHP线上自动加载异常与修复方法实例分析
2016/12/01 PHP
用js实现in_array的方法
2013/11/05 Javascript
js简单实现根据身份证号码识别性别年龄生日
2013/11/29 Javascript
textarea不能通过maxlength属性来限制字数的解决方法
2014/09/01 Javascript
jQuery中die()方法用法实例
2015/01/19 Javascript
jQuery取消ajax请求的方法
2015/06/09 Javascript
详解Node.js包的工程目录与NPM包管理器的使用
2016/02/16 Javascript
[原创]Javascript 实现广告后加载 可加载百度谷歌联盟广告
2016/05/11 Javascript
很酷的星级评分系统原生JS实现
2016/08/25 Javascript
javascript数组常用方法汇总
2016/09/10 Javascript
12 款 JS 代码测试必备工具(翻译)
2016/12/13 Javascript
Bootstrap源码解读标签、徽章、缩略图和警示框(8)
2016/12/26 Javascript
Vue.js 2.0 移动端拍照压缩图片预览及上传实例
2017/04/27 Javascript
vue学习笔记之指令v-text &amp;&amp; v-html &amp;&amp; v-bind详解
2017/05/12 Javascript
vue2.0.js的多级联动选择器实现方法
2018/02/09 Javascript
nodeJS模块简单用法示例
2018/04/21 NodeJs
JAVA面试题 static关键字详解
2019/07/16 Javascript
VUE.js实现动态设置输入框disabled属性
2019/10/28 Javascript
vue中提示$index is not defined错误的解决方式
2020/09/02 Javascript
vue实现选中效果
2020/10/07 Javascript
python代码检查工具pylint 让你的python更规范
2012/09/05 Python
python实现的简单窗口倒计时界面实例
2015/05/05 Python
开始着手第一个Django项目
2015/07/15 Python
python中利用Future对象异步返回结果示例代码
2017/09/07 Python
PyPDF2读取PDF文件内容保存到本地TXT实例
2020/05/12 Python
详解Python3 定义一个跨越多行的字符串的多种方法
2020/09/06 Python
CSS3 2D模拟实现摩天轮旋转效果
2016/11/16 HTML / CSS
websocket+sockjs+stompjs详解及实例代码
2018/11/30 HTML / CSS
入党申请自荐书范文
2014/02/11 职场文书
消防安全月活动总结
2015/05/08 职场文书
position:sticky 粘性定位的几种巧妙应用详解
2021/04/24 HTML / CSS
nginx常用配置conf的示例代码详解
2022/03/21 Servers