python之模块

模块就是工具包,要想使用这个工具包中的工具(就好比函数),就需要导入这个模块

模块是非常简单的Python文件,单个Python文件就是一个模块,两个文件就是两个模块。

import 语句

想使用Python源文件,只需在另一个源文件里执行import语句:

import module  #moudule为python中的模块名称

还可以重命名给这个模块,例如:

import os.path as pth

当解释器遇到import语句,如果模块在当前的搜索路径就会被导入。
一个模块只会被导入一次,不管你执行了多少次import。这样可以防止导入模块被一遍又一遍地执行

From…import 语句

Python的from语句让你从模块中导入一个指定的部分到当前命名空间中:

from modname import name

重命名:

from random import randint as rint

From…import* 语句

把一个模块的所有内容全都导入到当前的命名空间也是可行的,只需使用如下声明:
from modname import *
这提供了一个简单的方法来导入一个模块中的所有项目。然而这种声明不该被过多地使用。

定位模块

当你导入一个模块,Python解析器对模块位置的搜索顺序是:

当前目录
如果不在当前目录,Python 则搜索在 shell 变量 PYTHONPATH 下的每个目录。
如果都找不到,Python会察看默认路径。UNIX下,默认路径一般为/usr/local/lib/python/。
模块搜索路径存储在system模块的sys.path变量中。变量里包含当前目录,PYTHONPATH和由安装过程决定的默认目录。

python中的包

包将有联系的模块组织在一起,有效避免模块名称冲突问题,让应用组织结构更加清晰。
一个普通的python应用程序目录结构:
在这里插入图片描述
import * 理论上是希望文件系统找出包中所有的子模块,然后导入它们。
But 会花长时间,并出现边界效应等。
Python 解决方案是提供一个明确的包索引:
这个索引由__init__.py 定义 __all__变量,该变量为一列表, 只会导入指定的内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值