目录
模块
python模块(Module),是一个python文件,以.py结尾,包含了python对象定义和python语句,模块能定义函数,类和变量,模块里也能包含可执行的代码。
导入模块的方式
- import 模块名
语法:#1.导入模块
import 模块名
import 模块名1,模块名2...
#2.调用功能
模块名.功能名()
- from 模块名 import 功能名
语法:
from 模块名 import 功能1,功能2,功能3... from math import sqrt print(sqrt(9)) - from 模块名 import*
语法:from 模块名 import* from math import* print(sqrt(9)) - import 模块名 as 别名
语法:
import 模块名 as 别名 import time as tt tt.sleep(2) print('hello')注:定义别名之后,只能使用别名,而不能使用原模块名
- from 模块名 import 功能名 as 别名
制作模块
在python中,每个python文件都可以作为一个模块,模块的名字就是文件的名字。也就是说自定义模块名必须要符合标识符命名规则。
if __name__ = '__main__’:表示只在当前文件中调用该函数
__name__是系统变量,是模块的标识符,值是:如果是自身模块值是__main__,否则是当前模块名字。
模块定位顺序
当导入一个模块,python解释器对模块位置的搜索顺序是:
①当前目录
②如果不在当前目录,python则搜索在shell变量PYTHONPATH的每个目录
③如果都找不到,python还会查看默认路径。UNIX下,默认路径一般是/usr/local/lib/python/
模块搜索路径存储在system模块的sys.path变量中。变量里包含当前目录,PYTHONPATH和由安装过程决定的默认目录。
注:
①自己的文件名不要和已有模块名重复,否则导致模块功能无法使用
②使用from 模块名 import 功能 的时候,如果功能名字重复,调用到的是最后定义或导入的功能。
__all__
如果一个模块文件中用__all__变量,当使用 from XXX import * 导入时,只能导入这个列表中的元素。
包
包将有联系的模块组织在一起,即放在同一个文件夹下,并且在这个文件夹创建一个名字为__init__.py 文件,那么这个文件夹就称之为包
注:新建包之后,包内部会自动创建__init__.py文件,这个文件控制着包的导入行为。
新建包:[New] —— [Pathon Package] —— 输入包名 ——[ok] ——新建功能模块(有联系的模块)
导入包
方法一:
import 包名.模块名
包名.模块名.目标
方法二:
注:必须在__init__.py 文件中添加__all__ = [ ],控制允许导入的模块列表。
from 包名 import *
模块名.目标
__dict__
作用:收集类对象和实例对象的属性和方法对应的值从而返回一个字典。
eval()
eval()函数用来执行一个字符串表达式,并返回表达式的值。
eval函数功能:将字符串str当成有效的表达式来求值并返回计算结果。eval函数可以实现list、dict、tuple与str之间的转化
eval() 方法的语法:
| 1 |
|
参数:
-
expression -- 表达式。
-
globals -- 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
-
locals -- 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。
本文详细介绍了Python中模块和包的概念、不同导入方式及其使用技巧,包括import语句的多种形式、from...import语句的应用场景及注意事项等。

1016

被折叠的 条评论
为什么被折叠?



