Python创建模块及模块导入的方法


Posted in Python onMay 27, 2015

本文实例讲述了Python创建模块及模块导入的方法。分享给大家供大家参考。具体分析如下:

python学习手册中写道:

定义模块,只要使用文本编辑器,把一些python代码输入到文本中,然后以.py为后缀名进行保存,任何此类文件都会被认为是python模块。

比如说,下面的代码输入到一个文件中,就可以看作是一个模块:

def printme(var):
  print var
if __name__ == '__main__':
    printme(1)

假设说输入到a.py中,那么import a就可以把这个模块导入。

然后可执行a.printme(3),屏幕即可打印出3:

>>> a.printme(3)
3
>>>

一个模块顶层定义的变量,会自动变成模块的属性。例如:

data=[1,2,3]
def printme(var):
  print var
if __name__ == '__main__':
    printme(1)

data变量就是模块的一个属性。其实printme也是一个属性,只不过是一个函数罢了。

引入模块示例如下:(假定此时data=[1,2,3]未定义)

>>> import a
>>> a.data

Traceback (most recent call last):
 File "<pyshell#1>", line 1, in <module>
  a.data
AttributeError: 'module' object has no attribute 'data'
>>> reload(a)
<module 'a' from 'C:/py\a.pyc'>
>>> a.data

Traceback (most recent call last):
 File "<pyshell#3>", line 1, in <module>
  a.data
AttributeError: 'module' object has no attribute 'data'
>>>

从上述提示可以看出data属性未定义,此时再在a.py文件中定义data=[1,2,3],重新加载a模块,并输出data属性:

>>> reload(a)
<module 'a' from 'C:/py\a.py'>
>>> a.data
[1, 2, 3]
>>>

这里的reload函数可以重新加载一个模块。如果在模块代码中更改了,那么需要重新加载。

上面a.data,就是访问模块中的属性。

上面的例子是导入一个文件作为一个模块。

其实python的模块导入还有更丰富的内容。

除了模块名之外,python也可以导入指定目录路径。python代码的目录就称为包。因此,这类导入就称为包导入。事实上,包导入是把计算机上的目录变成python的一个命名空间。而属性就是目录中包含的子目录或者是模块文件。

看下面例子:

在我的桌面上有一个aa文件夹,里面有bb文件夹,bb里面有a.py这个文件。

那么在aa和bb文件夹中分别放置一个__init__.py,之后,在命令行中import aa.bb.a,就可以导入模块a了。

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python操作mysql中文显示乱码的解决方法
Oct 11 Python
python通过smpt发送邮件的方法
Apr 30 Python
分析python切片原理和方法
Dec 19 Python
DataFrame中去除指定列为空的行方法
Apr 08 Python
python开启摄像头以及深度学习实现目标检测方法
Aug 03 Python
简单了解python 生成器 列表推导式 生成器表达式
Aug 22 Python
python GUI库图形界面开发之PyQt5菜单栏控件QMenuBar的详细使用方法与实例
Feb 28 Python
python模拟哔哩哔哩滑块登入验证的实现
Apr 24 Python
Python实现画图软件功能方法详解
Jul 28 Python
python线程池 ThreadPoolExecutor 的用法示例
Oct 10 Python
Python wordcloud库安装方法总结
Dec 31 Python
python解析json数据
Apr 29 Python
Python类的用法实例浅析
May 27 #Python
Python socket编程实例详解
May 27 #Python
Python简单删除目录下文件以及文件夹的方法
May 27 #Python
python解析xml文件实例分析
May 27 #Python
Python定时执行之Timer用法示例
May 27 #Python
python定时执行指定函数的方法
May 27 #Python
python统计文本字符串里单词出现频率的方法
May 26 #Python
You might like
php实现模拟登陆方正教务系统抓取课表
2015/05/19 PHP
示例详解Laravel的注册重构
2016/08/14 PHP
强制设为首页代码
2006/06/19 Javascript
JS时间选择器 兼容IE6,7,8,9
2012/06/26 Javascript
JavaScript通过正则表达式实现表单验证电话号码
2014/03/07 Javascript
javascript运动详解
2015/07/06 Javascript
JS实现获取键盘按下的按键并显示在页面上的方法
2015/11/04 Javascript
Bootstrap3学习笔记(三)之表格
2016/05/20 Javascript
Angualrjs和bootstrap相结合实现数据表格table
2017/03/30 Javascript
使用原生js写ajax实例(推荐)
2017/05/31 Javascript
详谈js原型继承的一些问题
2017/09/06 Javascript
微信小程序tabBar模板用法实例分析【附demo源码下载】
2017/11/28 Javascript
微信小程序多音频播放进度条问题
2018/08/28 Javascript
vue+element tabs选项卡分页效果
2020/06/29 Javascript
使用vscode快速建立vue模板过程详解
2019/10/10 Javascript
vuex 多模块时 模块内部的mutation和action的调用方式
2020/07/24 Javascript
vue3+typeScript穿梭框的实现示例
2020/12/29 Vue.js
Python操作Redis之设置key的过期时间实例代码
2018/01/25 Python
python引入不同文件夹下的自定义模块方法
2018/10/27 Python
Python3 webservice接口测试代码详解
2020/06/23 Python
Django中使用Celery的方法步骤
2020/12/07 Python
JD Sports法国:英国篮球和运动时尚的领导者
2017/09/28 全球购物
马来西亚网上美容店:Hermo.my
2017/11/25 全球购物
英国领先的男装设计师服装购物网站:Mainline Menswear
2018/02/04 全球购物
您在慕尼黑的跑步商店:Lauf-bar
2019/10/11 全球购物
瑞士最大的图书贸易公司:Orell Füssli
2019/12/28 全球购物
医院实习介绍信
2014/01/12 职场文书
大龄毕业生求职别忘职业规划
2014/03/11 职场文书
自动一体化专业求职信
2014/03/15 职场文书
艺术设计专业个人求职信
2014/04/10 职场文书
《蝙蝠和雷达》教学反思
2014/04/23 职场文书
2014年环保工作总结
2014/11/26 职场文书
单位租房协议书范本
2014/12/04 职场文书
行为规范主题班会
2015/08/13 职场文书
CSS Transition通过改变Height实现展开收起元素
2021/08/07 HTML / CSS
将MySQL的表数据全量导入clichhouse库中
2022/03/21 MySQL