Python模块结构与布局操作方法实例分析

作者:坏蛋是我 时间:2021-11-26 10:49:31 

本文实例讲述了Python模块结构与布局操作方法。分享给大家供大家参考,具体如下:


#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相关内容感兴趣的读者可查看本站专题:《Python入门与进阶经典教程》、《Python字符串操作技巧汇总》、《Python列表(list)操作技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

标签:Python,模块,布局
0
投稿

猜你喜欢

  • MySQL中使用流式查询避免数据OOM

    2024-01-23 01:23:00
  • Django的models模型的具体使用

    2022-08-13 07:57:04
  • MySQL拼接字符串函数GROUP_CONCAT详解

    2024-01-27 18:21:56
  • vue实现nav导航栏的方法

    2024-05-09 15:18:22
  • Python+NumPy绘制常见曲线的方法详解

    2022-01-11 06:14:43
  • Django 解决上传文件时,request.FILES为空的问题

    2021-10-21 19:37:41
  • NodeJs Express框架操作MongoDB数据库执行方法讲解

    2024-01-25 08:59:08
  • 利用tcpdump对mysql进行抓包操作技巧

    2024-01-23 04:52:50
  • matplotlib图例legend语法及设置的方法

    2023-01-07 04:23:37
  • Python中logging日志库实例详解

    2023-10-04 13:26:25
  • Python调用实现最小二乘法的方法详解

    2022-07-04 16:31:00
  • SqlServer 扩展属性的介绍

    2024-01-17 09:32:15
  • 在Python中使用dict和set方法的教程

    2023-12-20 20:29:07
  • Python操作MongoDb数据库流程详解

    2024-01-18 08:48:36
  • XMLHTTP资料

    2008-09-05 17:20:00
  • python调用函数、类和文件操作简单实例总结

    2022-04-09 22:28:53
  • 表格头固定而列可滚动的效果

    2020-08-11 21:28:41
  • Numpy数组array和矩阵matrix转换方法

    2021-06-25 06:17:26
  • 跟老齐学Python之总结参数的传递

    2021-12-16 18:17:24
  • 浅谈Django+Gunicorn+Nginx部署之路

    2023-04-19 16:36:52
  • asp之家 网络编程 m.aspxhome.com