本文实例讲述了Python模块结构与布局操作方法。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
#coding=utf8 #起始行 #!/usr/bin/env python #模块文档 ''''' 合理的Module布局: (1) 起始行(Unix) (2) 模块文档 (3) 模块导入 (4) 变量定义 (5) 类定义 (6) 函数定义 (7) 主程序 ----------------------------- (1) 起始行(Unix) 通常只有在类Unix环境下才使用起始行,有起始行可以输入脚本名来执行脚本。 (2) 模块文档 简要介绍模块功能及重要全局变量的含义,模块外可以通过module.__doc__访问这些内容。 (3) 模块导入 导入当前模块的代码需要的所有模块;每个模块仅导入一次; 函数内部的模块导入代码不会被执行,除非该函数正在执行。 (4) 变量定义 这里定义的变量为全局变量,本模块中的所有函数都可以直接使用。 尽量使用局部变量代替全局变量,这样不但容易维护,还可以提高性能并节省内存。 (5) 类定义 所有的类需要在这里定义。当模块被导入时class语句会被执行,类也会被定义。 类的文档变量是class.__doc__ (6) 函数定义 此处定义的函数可以通过module.function()在外部被访问到,当模块被导入时def语句会被执行, 函数也就会定义好,函数的文档变量是function.__doc__ (7) 主程序 无论这个模块使被别的模块导入还是作为脚本直接执行,都会执行这部分代码。 通常这里不会有太多功能性代码,而是根据执行的模式调用不同的函数。 ''' #导入模块 import sys import time from scrapy.utils import job #定义变量 flag = 1 #类定影 class Person( object ): ''''' Person class set person name、sex、age、job output the person information ''' def __init__( self ): self .name = '' self .sex = '' self .age = 18 self .job = '' def setName( self ,name): self .name = name def setSex( self ,sex): self .sex = sex def setAge( self ,age): self .age = age def setJob( self ,job): self .job = job def outPut( self ): print ''''' name:%s sex:%s age:%d job:%s ''' % ( self .name, self .sex, self .age, self .job) #函数定义 def test(): ''''' test function ''' if flag: print ''''' run test() ''' person = Person() person.setName( "ewang" ) person.setAge( 25 ) person.setSex( "famale" ) person.setJob( "big data testing" ) person.outPut() #主程序 #如果模块使被导入,__name__的值为模块名字 #如果模块使被直接执行,__name__的值为'__main__' if __name__ = = '__main__' : test() |
希望本文所述对大家Python程序设计有所帮助。