python文件的整体结构

来源:互联网 发布:淘宝会员卡怎么设置 编辑:程序博客网 时间:2024/04/29 04:15

python文件的整体结构,如下:

#!/usr/bin/env python                      (1)起始行“this is a stack module”                 (2)模块文档import sys                                 (3)模块导入import os   debug = Ture                               (4)(全局)变量定义class FooClass (object):    "Foo class"                            (5)类定义(若有)    passdef test():                                (6)函数定义(若有)    "test function"    foo=FooClass()if __name__ =='__main__':                  (7)主程序    test()
(1) 起始行

通常只有在类unix环境下才使用起始行,由起始行就能够仅输入脚本名字来执行脚本,无需直接调用解释器。

(2)模块文档

此处你可以自己简单描述一下该模块的功能(可写可不写,主要是别人看到你的程序时可以第一时间明白你该模块的功能)

(3) 模块导入

导入当前模块的代码需要的所有模块;每个模块仅导入一次;函数内部的模块代码不会被执行,除非该函数正在执行

(4) 变量定义

这里定义的变量为全局变量,本模块的所有函数都可以直接用。

(5) 类定义语句

所有的类都需要在这里定义

(6) 函数定义语句

(7) 主程序

无论这个模块是被别的模块导入还是作为脚本直接执行,都会执行这部分代码。如果模块是被导入,__name__的值为模块名字;如果模块是被直接执行,__name__的值为‘__main__’

下面这个例子:进栈出栈

#!/usr/bin/env python                                       “this is a stack module” stack = []def pushit():    stack.append(raw_input('enter new string: ').strip())def popit():    if len(stack) == 0:        print 'cannot pop from an empty stack'    else:        print 'removed [',`stack.pop()`,']'def viewstack():    print stackCMDs={'u':pushit,'o':popit,'v':viewstack}def showmenu():    print  """    p(U)sh    p(O)p    (V)iewstack    (Q)uit    Enter choice:"""    while True:        while True:            try:                choice = raw_input().strip()[0].lower()            except(EOFError,KeyboardInterrupt,IndexError):                choice = 'q'            print '\n You picked:[%s]'%choice            if choice not in 'uovq':                print 'Invalid option,try angin'            else:                break       if choice =='q':            break        CMDs[choice]()if __name__ =='__main__':                       //程序从这开始执行    showmenu()


0 0