python中的模块、包

模块、包

为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式。在Python中,一个.py文件就称之为一个模块(Module)。

使用模块最大的好处是大大提高了代码的可维护性。其次,编写代码不必从零开始。当一个模块编写完毕,就可以被其他地方引用。我们在编写程序的时候,也经常引用其他模块,包括Python内置的模块和来自第三方的模块。

使用模块还可以避免函数名和变量名冲突。相同名字的函数和变量完全可以分别存在不同的模块中,因此,我们自己在编写模块时,不必考虑名字会与其他模块冲突。但是也要注意,尽量不要与内置函数名字冲突。

如果不同的人编写的模块名相同怎么办?为了避免模块名冲突,Python又引入了按目录来组织模块的方法,称为包(Package)。例如:将一个名叫auth.py文件存放在pack目录下。同时pack目录下有一个__init__.py文件(该文件默认是一个空文件),那么该pack就称为一个包。auth模块名就变为pack.auth。目录可以有多级,比如web.pack.auth。即web目录下的pack目录下的auth.py文件。

调用模块

import time                             #调用time模块

from time import sleep,time             #调用time模块的 sleep和time方法

from time import *                      #调用time模块中的所有方法(不推荐这么用)

from time import sleep as sleep2        #调用time模块的sleep方法,并将此方法设置别名sleep2

调用包package

from web.web2 import logger             #调用web目录下的web2包下的logger模块

from web.web2.logger import log         #调用web目录下的web2包下的logger模块 的log方法

import web                              #调用web包,实际是执行了web包下的__init__.py文件

运行测试

当我们在命令行运行一个模块文件时,Python解释器把一个特殊变量__name__置为__main__,而如果在其他地方导入该模块时,if判断将失败,因此,这种if测试可以让一个模块通过命令行运行时执行一些额外的代码,最常见的就是运行测试。

转载于:https://www.cnblogs.com/hacker001/p/10094777.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>