Python模块结构与布局操作实例

来源:互联网 发布:手机淘宝昵称怎么修改 编辑:程序博客网 时间:2024/06/06 10:06
#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 sysimport timefrom 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()

0 0
原创粉丝点击