转自《简明python教程》第八章模块
1. 创建自己的模块
------------------------------------------------------
#!/usr/bin/env python
#-*-coding:utf-8-*- print 'This is a test of sayHello fuction'
sayHello()
------------------------------------------------------
执行:
#python myModule.py
Hi, this is mymodule speaking!
2. 使用模块方法一:import
------------------------------------------------------
#!/usr/bin/python
# Filename: myModuleDemo.py
import myModule
myModule.sayHello()
print 'Version', myModule.version
------------------------------------------------------
执行:
Hi, this is mymodule speaking!
Version: 1.0
3.使用方法二:import ... from ...
------------------------------------------------------
#!/usr/bin/python
# Filename: myModuleDemo2.py
from myModule import sayHello,version
sayHello()
print 'Version: ',version
------------------------------------------------------
执行:
Hi, this is mymodule speaking!
Version: 1.0注意:一般说来,应该避免使用from..import
而使用import
语句,因为这样可以使你的程序更加易读,也可以避免名称的冲突。
-------------------------------------------------------
另一种用法:http://c.biancheng.net/cpp/html/1837.html
例子(保存为mymodule.py):
- def sayhi():
- print('嗨,这是我的模块在讲话。')
- __version__ = '0.1'
你还可以使用:
- from mymodule import *
from mymodule import *
这将导入所有的公共名称如 sayhi,但不会导入__version__,因为它始于双下划线。
#####################################
除了模块名之外,python也可以导入指定目录路径。python代码的目录就称为包。因此,这类导入就称为包导入。事实上,包导入是把计算机上的目录变成python的一个命名空间。而属性就是目录中包含的子目录或者是模块文件。
看下面例子:
在我的桌面上有一个aa文件夹,里面有bb文件夹,bb里面有a.py这个文件。
那么在aa和bb文件夹中分别放置一个__init__.py,之后,在命令行中import aa.bb.a,就可以导入模块a了。
--------------------------------------------------