python文件的整体结构

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)类定义(若有)
    pass

def 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 stack

CMDs={'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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值