1 / 54
文档名称:

Python程序设计第5章-模块和包课件.ppt

格式:ppt   大小:2,287KB   页数:54页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Python程序设计第5章-模块和包课件.ppt

上传人:ogthpsa 2022/6/18 文件大小:2.23 MB

下载得到文件列表

Python程序设计第5章-模块和包课件.ppt

相关文档

文档介绍

文档介绍:*
第5章 模块和包
主 讲 人:
目录
*
2



*
概述
本章要解决的问题如下:
什么是模块
为什么使用模块
如何使用模块
包以及实例
.0/dist-packages
③ linux(redhat)
/usr/lib/-packages
*

 模块搜索路径
方法三:函数添加。
()函数添加搜索路径,参数值即为要添加的路径。
① import sys

③ ("c:\\")
*

 模块导入语句
1.import语句
import导入为绝对导入。
import 只能导入模块,不能导入模块中的对象(类、函数、变量等)
*

 模块导入语句
2.嵌套import
(1)顺序嵌套
例如:本模块导入 A 模块(import A),A 中又 import B,B 模块还可以 import 其他模块。
*

 模块导入语句
2.嵌套import
(2)循环嵌套,程序如下:
#
from B import D
class C:pass
文件[ ]
from A import C
class D:pass
为什么执行A的时候不能加载D呢?
*

 模块导入语句
如果将 改为:import B就可以了。这是怎么回事呢?这跟Python内部 import 的机制是有关的,具体到 from B import D,Python 内部会分成以下几个步骤(具体如右图所示)。
*

 模块导入语句
这个例子的执行顺序如下(具体如右图所示)。
*

 模块导入语句
3.from语句
因为from会把变量名复制到另外一个作用域,所以它就可以直接在脚本中使用复制后的变量名,而不需要通过模块(例如printer)。
>>> from module1 import printer #复制一个变量
>>> printer('Hello world!')
*

 模块导入语句
4.from *语句
当使用from *时,会取得模块顶层所有赋了值的变量名。在脚本中就可以直接使用得到的变量名printer,而不需要通过模块名。
>>> from module1 import * #复制所有变量
>>> print('Hello world!')
Hello world!
*

 模块导入语句
5.导入只发生一次
模块会在第一次import或from时载入并执行,并且只在第一次如此。
*

 模块导入语句
6.import和from是赋值语句
(1)from将一个或多个变量名赋值给另一个模块中同名的对象,例子如下:
x=1
y=[1,2]
%python
>>> from small import x,y #复制两个变量
>>> x=42 #修改x值
>>> y[0]=42 #修改共享变量
*

 模块导入语句
6.import和from是赋值语句
(2)文件变量名的改变
*

 模块导入语句
6.import和from是赋值语句
(3)import和from的对等性
像这样的from语句:
from module import name1,name2 #复制两个变量
与下面这些语句是等效的:
import module #获取模块对象
name1= #赋值
name2=
del module #删除模块名
*

 模块导入语句
7.from语句潜在的陷阱
from语句会让变量位置更隐秘和模糊,且从理论上讲,from语句有破坏命名空间的“潜质”。如果使用from导入变量,而那些变量碰巧和作用域中现有变量同名,变量就会被悄悄地覆盖掉。
另一方面,和reload调用同时使用时,from语句