视频教程下载链接:​​http://pan.baidu.com/s/1eScHb6i​

配套教程下载:​​http://pan.baidu.com/s/1qYdI6q4​

有时候,我们会经常使用到一些函数,它们不一定是在一个程序中,也可能在不同的程序中,所以,为了避免每一次都重写一样的代码,你可以把经常要用到的函数放在不同的文件,需要时,只需要将文件包含进来就可以使用了,所以这样不仅能够让你更有效率的编码,而且呢,还可以使代码结构更加清晰,模块化。我们现在就来演示,首先我们创建一个后面需要包含的文件,右键项目,点击New Python File: 图 4‑8 然后,将这个文件命名为Tool.py,py是Python文件的后缀名。 图 4‑9 现在,我们的项目中就有了2个Python文件了,接下来,我们在Tool文件中定义一个函数:

def Google():

print("Don't be evil")

那么现在,假如这个函数我们以后经常要用到,我们可以把它作为一个模块,以后,如果我们想要使用它,比如说,在first.py中调用这个函数的话,我们需要将所要引用的函数所在的文件包含进来,这里需要使用import关键字,接着就是输入文件的名称,这里你不需要输入后缀名py,因为当你使用import关键字时,很明显,你是要包含一个Python文件,所以不需要额外的输入py:

import Tool

所以,到目前为止,我们已经包含了Tool文件, import这行代码的意思就等同于从Tool文件拷贝所有的代码,然后粘贴到import的地方,现在,运行: 图 4‑10 注意,没有任何改变。这是因为我们没有调用函数,现在,如果我们想调用Google函数,可以输入:

import Tool

Google()

运行: 图 4‑11 它提示说,函数未定义。为什么会出现这个错误呢?大家可以想象一下,其实原因很简单,假如说现在你所在项目中有一大堆的Python文件,这些文件有可能是你自己写的,也有可能是你的同学,同事或者从网上下载下来的,这些文件很可能有重名的函数,所以,如果这里只是单纯的通过函数的名称Google来调用函数,将无法避免函数重名的问题,所以为了避免重名的问题,我们需要在函数调用的时候加上模块的名称:

import Tool

Tool.Google()

运行: 图 4‑12 你看,这就成功的调用了另一个模块中的函数。 到目前为止,我们已经学会了使用自己定义的模块,接下来我们一起来学习如何调用他人编写的模块。比如,现在我要引用一个Python内置的随机数的模块:

import Tool

import random

random这个模块中含有很多Python语言内置的函数,我们可以很容易的把它包含进来,当我们引用之后,就可以使用模块中的函数了,比如说,现在我们需要得到一个在1到1000之间的随机值,然后将这个变量打印出来:

x = random.randrange(1, 1000)

print(x)

然后运行多次,你会发现每一次运行的结果都不一样,这就是关于模块的全部内容。​