跟我一起写python--模块(15)

编程语言中模块是指数据说明、可执行语句等程序元素的集合,它是指单独命名的可通过名字来访问的过程、函数、子程序或宏调用。

我们通常在C\C++\JAVA中如果需要用到某个特定功能,需要调用对应模块的接口,需要使用include或者import相关头文件或者包。在python中我们同样的,先实现一个.py文件,在另一个文件中需要import时,将事先写好的.py文件拷贝 到当前目录,或者是在sys.path中增加事先写好的.py文件所在的目录,然后再import我们的模块名称。

即调用方法为:

模块名.函数名

1. 模块导入–import

在Python中用关键字import来引入某个模块,比如要引用模块sys,就可以在文件最开始的地方用import sys来引入。

例:

1
2
3
#!/usr/bin/python
import sys
print ("sys\'s path is", sys.path)

输出:

sys’s path is [‘/home/tianger/python’, ‘/usr/lib/python2.7’, ‘/usr/lib/python2.7/plat-x86_64-linux-gnu’, ‘/usr/lib/python2.7/lib-tk’, ‘/usr/lib/python2.7/lib-old’, ‘/usr/lib/python2.7/lib-dynload’, ‘/usr/local/lib/python2.7/dist-packages’, ‘/usr/lib/python2.7/dist-packages’, ‘/usr/lib/python2.7/dist-packages/PILcompat’, ‘/usr/lib/python2.7/dist-packages/gtk-2.0’, ‘/usr/lib/pymodules/python2.7’, ‘/usr/lib/python2.7/dist-packages/ubuntu-sso-client’]

说明:

1、import sys 引入 python 标准库中的 sys.py 模块;这是引入某一模块的方法。
2、sys.path 包含了一个 Python 解释器自动查找所需模块的路径的列表。

2.自定义模块

第一节我们用了系统的模块sys,但是通常情况我们需要自己写接口给自己调用,这就需要我们来实现自定义模块

我们先创建一下自定义模块hello.py,内容如下:

1
2
3
4
5
6
7
#!usr/bin/python

def say():
print ('hello world!'

def plus(a,b)
return a+b

我们再创建一个test.py,来调用hello.py中的say()和plus()函数实现,test.py内容如下:

1
2
3
4
5
6
7
8
9
10
#!/usr/bin/python
import hello

print ('call hello\'s say function as follow:')

hello.say()

sum = hello.plus(3,5)

print ('call hello\'s plus function is', sum)

输出:

call hello’s say function as follow:
hello world!
call hello’s plus function is 8

说明:

import hello –加载我们之前写的hello模块
hello.say() –调用hello模块中的say函数,会自动打印出hello world!
sum = hello.plus(3,5) –向hello的plus函数中,传入两个值3、5,计算得到的结果赋值给sum

通过上面两个简单的例子,我们可以编写自己的模块了,让自己的工程进行模块化,不但可以使代码变得简洁,同时也增加了代码的复用性

Tianger Ge wechat
如果您喜欢这篇文章,欢迎扫一扫我的微信公众号!