Python大学教程(第2版) 课件 第6章 使用模块.pptx

Python大学教程(第2版) 课件 第6章 使用模块.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第6章使用模块

目录26.1 模块的创建6.2 模块的导入6.3 包6.4 第三方包的安装

6.1模块的创建

6.1模块的创建模块是Python中的一个重要概念。随着编写的程序越来越长,可以将这些代码分成几个文件,这样更易于代码的维护。当把一些相关的代码存放在一个文件中时,就创建了一个模块。模块中的定义可以被导入到其他模块中从而被其他模块所使用,这就使得我们可以在多个程序中使用已经编写好的函数而无需将函数复制到每个程序中。总的来说,模块就是包含Python定义和声明的文件。文件名就是模块名加上.py的扩展名。例如,在目录下创建一个名为“fibonacci.py”的文件,其内容如代码清单6-1所示。

6.1模块的创建代码清单6-1fibonacci.py1 deffibonacci(x):2 a=03 b=14 c=05 foriinrange(0,x):6 a=b7 b=c8 c=a+b9 returnc1011 defrecursiveFibonacci(x):12 ifx==0:13 return014 elifx==1:15 return116 else:17 returnfibonacci(x-1)+fibonacci(x-2)此时已经创建了一个名为fibonacci的模块,模块内定义了两个函数。可以在命令行或其他文件中使用import语句来导入这一模块,使用模块内的函数。模块有一些内置属性,用于存储模块的某些信息,如__name__,__doc__,等等。__name__属性用来取得模块的名称。如果当前模块是主模块,则此时__name__的值为__main__。

6.2模块的导入

6.2模块的导入Python以模块为单位来组织代码。Python标准库自身就内置了许多标准模块,可以应用在多个方面,例如,string模块包含常见的字符串操作,math模块包含常见的数学函数,socket模块提供了对底层网络接口的支持,等等。除了标准模块之外,Python还有非常丰富的第三方模块以供用户使用。当然,用户也可以自己编写模块。

6.2模块的导入要在模块外部使用模块内定义的函数,首先要导入该模块。使用import语句可以导入一个模块,格式为“import模块名[as别名]”。例如,要导入6.1节定义的fibonacci模块,可以通过下面的语句来导入:importfibonacci这条语句直接导入了模块名,可以通过模块名来访问模块内的对象。例如:print(fibonacci.fibonacci(10))result=fibonacci.recursiveFibonacci(7)如果频繁地使用一个函数而不想总是带着模块名进行调用,则可以将其赋给一个本地变量。例如:fib=fibonacci.fibonacciprint(fib(6))此外,还可以在import后添加as子句来作为模块的别名。例如:importfibonacciasfibo使用这种方法可以使用“别名.对象名”的格式来调用模块内的对象。例如:fibo.recursiveFibonacci(11)

6.2模块的导入Python还支持另外一种语法,即“from模块名import对象名[as别名]”。使用这种格式仅导入明确指定的对象,可以减少访问速度,同时不需要使用模块名进行调用。例如:fromfibonacciimportrecursiveFibonacciprint(recursiveFibonacci(12))如果要导入的模块内的对象与当前的某对象同名,可以使用as子句来为要导入的对象设置别名,从而避免这一情况。如果想要使用这一语法导入模块下的全部对象,则可以使用星号来替代对象名。例如:fromfibonacciimport*这种方式虽然简单省事,但是并不推荐使用。一旦不同模块里有重名的对象,这种导入方式将会引发混乱。注意:习惯上,我们将所有的import语句放在文件的开始位置,虽然这不是强制性的。实际上,import语句可以置于程序中的任何位置。

6.2模块的导入代码清单6-2importModule.py1 importfibonacciasfib #以fib为别名导入fibonacci模块2 frommathimportfactorial #导入math模块的factorial

文档评论(0)

lai + 关注
实名认证
内容提供者

精品资料

版权声明书
用户编号:7040145050000060

1亿VIP精品文档

相关文档