python进阶教程之模块(module)介绍
我们之前看到了函数和对象。从本质上来说,它们都是为了更好的组织已经有的程序,以方便重复利用。
模块(module)也是为了同样的目的。在Python中,一个.py文件就构成一个模块。通过模块,你可以调用其它文件中的程序。
引入模块
我们先写一个first.py文件,内容如下:
def laugh():
print 'HaHaHaHa'
再写一个second.py,并引入first中的程序:
import first
for i in range(10):
first.laugh()
在second.py中,我们使用了first.py中定义的laugh()函数。
引入模块后,可以通过模块.对象的方式来调用引入模块中的某个对象。上面例子中,first为引入的模块,laugh()是我们所引入的对象。
Python中还有其它的引入方式
import a as b # 引入模块a,并将模块a重命名为b
from a import function1 # 从模块a中引入function1对象。调用a中对象时,我们不用再说明模块,即直接使用function1,而不是a.function1。
from a import * # 从模块a中引入所有对象。调用a中对象时,我们不用再说明模块,即直接使用对象,而不是a.对象。
这些引用方式,可以方便后面的程序书写。
搜索路径
Python会在以下路径中搜索它想要寻找的模块:
程序所在的文件夹
标准库的安装路径
操作系统环境变量PYTHONPATH所包含的路径
如果你有自定义的模块,或者下载的模块,可以根据情况放在相应的路径,以便Python可以找到。
模块包
可以将功能相似的模块放在同一个文件夹(比如说this_dir)中,构成一个模块包。通过
import this_dir.module
引入this_dir文件夹中的module模块。
该文件夹中必须包含一个__init__.py的文件,提醒Python,该文件夹为一个模块包。__init__.py可以是一个空文件。
总结
import module
module.object
__init__.py
相关推荐
-
python开发中module模块用法实例分析
本文实例讲述了python开发中module模块用法.分享给大家供大家参考,具体如下: 在python中,我们可以把一些功能模块化,就有一点类似于java中,把一些功能相关或者相同的代码放到一起,这样我们需要用的时候,就可以直接调用了 这样做的好处: 1,只要写好了一个功能模块,就可以在以后调用,代码的重用就可以体现出来了 2,功能写好了以后,不会发生错误.如果一个相同的功能,我们在一个模块中写了一遍,在另外的模块中又写了一遍......这样我们难免保证我们在写的过程中不发生错误. 但是我们如果
-
python中reload(module)的用法示例详解
前言 本文主要给大家介绍了关于python中reload(module)用法的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 1.Python2中可以和Python3中关于reload()用法的区别. Python2 中可以直接使用reload(module)重载模块. Pyhton3中需要使用如下方式: (1) >>> from imp >>> imp.reload(module) (2) >>> from imp imp
-
python进阶教程之模块(module)介绍
我们之前看到了函数和对象.从本质上来说,它们都是为了更好的组织已经有的程序,以方便重复利用. 模块(module)也是为了同样的目的.在Python中,一个.py文件就构成一个模块.通过模块,你可以调用其它文件中的程序. 引入模块 我们先写一个first.py文件,内容如下: 复制代码 代码如下: def laugh(): print 'HaHaHaHa' 再写一个second.py,并引入first中的程序: 复制代码 代码如下: import first for i in range
-
Python进阶教程之创建本地PyPI仓库
目录 初识pypi仓库 创建本地 PyPI 仓库 安装 pypiserver 上传 Python 安装包 使用私有 PyPI 仓库 总结 初识pypi仓库 pypi仓库 是对第三方库的代码仓管库,如有需要可以从仓库中下载,下载用命令pip install 库名 pip 命令是需要在cmd命令下运行,不能在python环境下使用 创建本地 PyPI 仓库 安装 pypiserver $ mkdir pypiserver $ cd pypiserver $ mkdir ./packages $ mk
-
python进阶教程之词典、字典、dict
基础教程介绍了基本概念,特别是对象和类. 进阶教程对基础教程的进一步拓展,说明Python的细节.希望在进阶教程之后,你对Python有一个更全面的认识. 之前我们说了,列表是Python里的一个类.一个特定的表,比如说nl = [1,3,8],就是这个类的一个对象.我们可以调用这个对象的一些方法,比如 nl.append(15). 我们要介绍一个新的类,词典 (dictionary).与列表相似,词典也可以储存多个元素.这种储存多个元素的对象称为容器(container). 基本概念 常见的创
-
Python 序列化 pickle/cPickle模块使用介绍
Python序列化的概念很简单.内存里面有一个数据结构,你希望将它保存下来,重用,或者发送给其他人.你会怎么做?这取决于你想要怎么保存,怎么重用,发送给谁.很多游戏允许你在退出的时候保存进度,然后你再次启动的时候回到上次退出的地方.(实际上,很多非游戏程序也会这么干)在这种情况下,一个捕获了当前进度的数据结构需要在你退出的时候保存到硬盘上,接着在你重新启动的时候从硬盘上加载进来. Python标准库提供pickle和cPickle模块.cPickle是用C编码的,在运行效率上比pickle要高,
-
python持久性管理pickle模块详细介绍
持久性就是指保持对象,甚至在多次执行同一程序之间也保持对象.通过本文,您会对 Python对象的各种持久性机制(从关系数据库到 Python 的 pickle以及其它机制)有一个总体认识.另外,还会让您更深一步地了解Python 的对象序列化能力. 什么是持久性? 持 久性的基本思想很简单.假定有一个 Python 程序,它可能是一个管理日常待办事项的程序,您希望在多次执行这个程序之间可以保存应用程序对象(待办事项).换句话说,您希望将对象存储在磁盘上,便于 以后检索.这就是持久性.要达到这个目
-
Python基础之getpass模块详细介绍
本文主要给大家介绍了关于Python中getpass模块的相关内容,分享出来供大家参考学习,话不多说了,来一起看看详细的介绍: getpass模块提供了平台无关的在命令行下输入密码的方法; 该模块主要提供: 两个函数: getuser, getpass 一个报警: GetPassWarning(当输入的密码可能会显示的时候抛出,该报警为UserWarning的一个子类) 备注: 上面为密码显示时抛出的报警 getpass.getuser() 该函数返回登陆的用户名,不需要参数 该函数会检查环境变
-
python基础教程之自定义函数介绍
函数最重要的目的是方便我们重复使用相同的一段程序. 将一些操作隶属于一个函数,以后你想实现相同的操作的时候,只用调用函数名就可以,而不需要重复敲所有的语句. 函数的定义 首先,我们要定义一个函数, 以说明这个函数的功能. 复制代码 代码如下: def square_sum(a,b): c = a**2 + b**2 return c 这个函数的功能是求两个数的平方和. 首先,def,这个关键字通知python:我在定义一个函数.square_sum是函数名. 括号中的a, b是函
-
Python图像处理PIL各模块详细介绍(推荐)
Image模块 Image模块是在Python PIL图像处理中常见的模块,对图像进行基础操作的功能基本都包含于此模块内.如open.save.conver.show-等功能. open类 Image.open(file) ⇒ image Image.open(file, mode) ⇒ image 要从文件加载图像,使用 open() 函数, 在 Image 模块: @zhangziju from PIL import Image ##调用库 im = Image.open("E:\mywif
-
python进阶教程之循环对象
这一讲的主要目的是为了大家在读Python程序的时候对循环对象有一个基本概念. 循环对象的并不是随着Python的诞生就存在的,但它的发展迅速,特别是Python 3x的时代,循环对象正在成为循环的标准形式. 什么是循环对象 循环对象是这样一个对象,它包含有一个next()方法(__next__()方法,在python 3x中), 这个方法的目的是进行到下一个结果,而在结束一系列结果之后,举出StopIteration错误. 当一个循环结构(比如for)调用循环对象时,它就会每次循环的时候调用n
-
python进阶教程之文本文件的读取和写入
Python具有基本的文本文件读写功能.Python的标准库提供有更丰富的读写功能. 文本文件的读写主要通过open()所构建的文件对象来实现. 创建文件对象 我们打开一个文件,并使用一个对象来表示该文件: 复制代码 代码如下: f = open(文件名,模式) 最常用的模式有: 复制代码 代码如下: "r" # 只读 "w" # 写入 比如 复制代码 代码如下: >>>f = open("test.txt",&
随机推荐
- AngularJs Managing Service Dependencies详解
- JavaWeb中HttpSession中表单的重复提交示例
- 浅谈JavaScript超时调用和间歇调用
- 精彩回顾!Visual Studio 2017正式版发布全纪录
- .net 运用二进制位运算进行数据库权限管理
- JavaScript仿微博发布信息案例
- Android控件系列之EditText使用方法
- Javascript删除指定元素节点的方法
- jQuery 获取select选中值及清除选中状态
- win32 api实现2048游戏示例
- javascript基本语法分析说明
- 用批处理程序修改 计算机名 工作组 计算机描述的代码
- shell脚本结合iptables防端口扫描的实现
- Android实战教程第四十篇之Chronometer实现倒计时
- jquery实现鼠标拖拽滑动效果来选择数字的方法
- Ajax实现简单下拉选项效果【推荐】
- C# 字符串处理小工具
- 路由器安全有关的目录
- Python使用matplotlib的pie函数绘制饼状图功能示例
- Java版水果管理系统源码