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从ftp下载数据保存实例
Nov 20 Python
Python制作爬虫采集小说
Oct 25 Python
Python连接MySQL并使用fetchall()方法过滤特殊字符
Mar 13 Python
Python基于多线程实现ping扫描功能示例
Jul 23 Python
Python中查看变量的类型内存地址所占字节的大小
Jun 26 Python
让Python脚本暂停执行的几种方法(小结)
Jul 11 Python
对Python3中列表乘以某一个数的示例详解
Jul 20 Python
softmax及python实现过程解析
Sep 30 Python
Python应用实现双指数函数及拟合代码实例
Jun 19 Python
Python 排序最长英文单词链(列表中前一个单词末字母是下一个单词的首字母)
Dec 14 Python
pandas 实现将NaN转换为None
May 14 Python
使用pandas生成/读取csv文件的方法实例
Jul 09 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
全国FM电台频率大全 - 5 内蒙古自治区
2020/03/11 无线电
用PHP和ACCESS写聊天室(六)
2006/10/09 PHP
PHP乱码问题,UTF-8乱码常见问题小结
2012/04/09 PHP
php遍历文件夹下的所有文件和子文件夹示例
2014/03/20 PHP
PHP基于新浪IP库获取IP详细地址的方法
2017/05/04 PHP
seajs1.3.0源码解析之module依赖有序加载
2012/11/07 Javascript
jquery利用ajax调用后台方法实例
2013/08/23 Javascript
javascript实现单击和双击并存的方法
2014/12/13 Javascript
js实现选中复选框文字变色的方法
2015/08/14 Javascript
js获取表格的行数和列数的方法
2015/10/23 Javascript
JavaScript中Textarea滚动条不能拖动的解决方法
2015/12/15 Javascript
AngularJS基础 ng-non-bindable 指令详细介绍
2016/08/02 Javascript
详解浏览器渲染页面过程
2017/02/09 Javascript
ionic App问题总结系列之ionic点击系统返回键退出App
2017/08/19 Javascript
jQuery实现的简单获取索引功能示例
2018/06/04 jQuery
Webstorm2016使用技巧(SVN插件使用)
2018/10/29 Javascript
浅谈es6中的元编程
2020/12/01 Javascript
[06:45]DOTA2卡尔工作室 英雄介绍幻影长矛手篇
2013/07/12 DOTA
python正则表达式re模块详解
2014/06/25 Python
Python中的exec、eval使用实例
2014/09/23 Python
python使用两种发邮件的方式smtp和outlook示例
2017/06/02 Python
python 读取DICOM头文件的实例
2018/05/07 Python
Python 网络爬虫--关于简单的模拟登录实例讲解
2018/06/01 Python
在python中利用opencv简单做图片比对的方法
2019/01/24 Python
解决python super()调用多重继承函数的问题
2019/06/26 Python
python创建学生成绩管理系统
2019/11/22 Python
matplotlib绘制多个子图(subplot)的方法
2019/12/03 Python
python中前缀运算符 *和 **的用法示例详解
2020/05/28 Python
python进度条显示之tqmd模块
2020/08/22 Python
Android笔试题总结
2014/11/29 面试题
公务员政审材料
2014/12/23 职场文书
担保书范文
2015/01/20 职场文书
2015年百日安全活动总结
2015/03/26 职场文书
导游词之秦皇岛燕塞湖
2020/01/03 职场文书
如何理解python接口自动化之logging日志模块
2021/06/15 Python
win10如何开启ahci模式?win10开启ahci模式详细操作教程
2022/07/23 数码科技