Chinaunix首页 | 论坛 | 博客
  • 博客访问: 819723
  • 博文数量: 97
  • 博客积分: 3042
  • 博客等级: 中校
  • 技术积分: 1610
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-21 11:48
文章存档

2015年(1)

2014年(3)

2013年(4)

2012年(43)

2011年(44)

2010年(2)

分类: LINUX

2011-11-20 17:25:08

python中的程序是由包,模块和函数组成。包是由一系列模块组成的集合。而模块则是由处理问题的一系列函数组成的集合。下面分别说明各自的特征:
 
模块:
python的程序是由一个个模块组成的,一个python文件就是一个模块。
(1)模块的创建
以一个示例来说明模块的创建过程,这样更容易理解。
例如创建了一个“myModule.py”的文件,也就是定义了一个“myModule.py”的模块,该模块中定义了一个func()的函数和一个名为MyClass的类,MyClass中定义了一个myFunc()的方法:
def func():
     print "This is my MyModule.func()"
 
class MyClass:
     def myFunc(self):
         print "This is MyModule.MyClass.myFunc()"
 
然后在创建myModule.py的目录下创建一个名为“call_myModule.py"的文件,在该文件中调用myModule模块的函数和类:
import myModule  #导入该模块
 
#调用模块的函数,调用该函数时一定得加前缀myModule,否则python不知道函数的命名空间
myModule.func()
#创建类的实例myClass,这里也需要添加前缀myModule
myClass = myModule.MyClass()
#调用类的方法myFunc 结果输出:"MyModule.MyClass.myFunc()"
myClass.myFunc()
 
(2)模块的导入
使用一个模块中的类或者函数之前应该先导入该模块,模块的导入应该使用import语句,导入格式:
import module_name
该语句可以直接导入一个模块,调用模块的函数和类时,也应该以模块名作为前缀。当然也可以不加前缀,但此时应该使用import...from...语句,导入的格式如下:
from module_name import function_name
但一般情况下不要使用该语句,因为会是你的代码可读性变差。
 
(3)模块的属性
模块有一些内置属性,用来完成特定的任务,如__name__, __doc__,每个模块都由名称, 例如:用于判断当前模块是不是程序的入口,如果程序当前正在使用则__name__的值为__main__, 例如创建一个模块myModule:
if __name__==__main__:
    print "myModule 作为主程序运行"
else:
    print "myModule被另外一个程序调用" 
 
 
阅读(949) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~