Python模块文件结构代码详解


Posted in Python onFebruary 03, 2018

本文研究的主要是Python模块文件结构的相关内容,具体如下。

Python文件结构

文件结构(范例全文)

#/usr/bin/env python

  "this is a test module"

  import sys
  import os

  debug = True

  class FooClass (object):
    "Foo class"

    pass

  def test():
    "test function"
    foo = FooClass()

    if debugL
      print 'ran test()'

  if __name__ == '__main__'
    test()

文件结构(分行介绍)

(1)起始行(指定使用的Python的版本)

#/usr/bin/env python

(2)模块文档(文档字符串,如果跨行用三个单引号扩起来)

"this is a test module"

(3)模块导入

import sys
  import os

(4)(全局)变量定义

debug = True

(5)类定义(若有)

class FooClass (object):
    "Foo class"

    pass

(6)函数定义(若有)

  def test():
    "test function"
    foo = FooClass()

    if debugL
      print 'ran test()'

7)主程序

if __name__ == '__main__'
    test()

说明

主程序

  • 无论当前模块是被背的模块导入还是作为脚本直接运行,都会执行这部分代码

注意: 所有的模块都有能力执行代码

  • 最高级别的Python语句(没有缩进的)在模块被导入时就会执行,无论是否真的需要执行
  • 妥当的做法:除了那些真正需要执行的代码以外,所有的功能代码都通过函数建立,因此:

仅在主程序模块中编写大量的顶级可执行代码
用于被导入的模块只应该存在较少的顶级执行代码

__name__ 指示模块应该如何被加载 ( 这样能够做到模块的 自检 )

  • 如果模块是被导入的,__name__ 的值是 模块的名字
  • 如果模块是直接执行,__name__ 的值是 __main__

总结

以上就是本文关于Python模块文件结构代码详解的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
在Python中操作文件之truncate()方法的使用教程
May 25 Python
Python的collections模块中namedtuple结构使用示例
Jul 07 Python
python实现壁纸批量下载代码实例
Jan 25 Python
Pyqt实现无边框窗口拖动以及窗口大小改变
Apr 19 Python
TensorFlow实现Logistic回归
Sep 07 Python
python 使用re.search()筛选后 选取部分结果的方法
Nov 28 Python
Django之创建引擎索引报错及解决详解
Jul 17 Python
如何爬取通过ajax加载数据的网站
Aug 15 Python
python的sys.path模块路径添加方式
Mar 09 Python
Python做图像处理及视频音频文件分离和合成功能
Nov 24 Python
python urllib库的使用详解
Apr 13 Python
python机器学习创建基于规则聊天机器人过程示例详解
Nov 02 Python
Python处理文本换行符实例代码
Feb 03 #Python
Python断言assert的用法代码解析
Feb 03 #Python
Python下载网络小说实例代码
Feb 03 #Python
JS设计模式之责任链模式实例详解
Feb 03 #Python
numpy使用技巧之数组过滤实例代码
Feb 03 #Python
python验证码识别实例代码
Feb 03 #Python
Django中cookie的基本使用方法示例
Feb 03 #Python
You might like
《斗罗大陆》六翼天使武魂最强,为什么老千家不是上三宗?
2020/03/02 国漫
php 获取百度的热词数据的代码
2012/02/18 PHP
强制PHP命令行脚本单进程运行的方法
2014/04/15 PHP
PHP屏蔽过滤指定关键字的方法
2014/11/03 PHP
php多重接口的实现方法
2015/06/20 PHP
10条php编程小技巧
2015/07/07 PHP
Android App中DrawerLayout抽屉效果的菜单编写实例
2016/03/21 PHP
阿里云Win2016安装Apache和PHP环境图文教程
2018/03/11 PHP
ThinkPHP 3.2.3实现加减乘除图片验证码
2018/12/05 PHP
cookie丢失问题(认证失效) Authentication (用户验证信息)也会丢失
2009/06/04 Javascript
Javascript Boolean、Nnumber、String 强制类型转换的区别详细介绍
2012/12/13 Javascript
jquery无缝向上滚动实现代码
2013/03/29 Javascript
通过length属性判断jquery对象是否存在
2013/10/18 Javascript
获得Javascript对象属性个数的示例代码
2013/11/21 Javascript
js模拟点击以提交表单为例兼容主流浏览器
2013/11/29 Javascript
js放大镜放大购物图片效果
2017/01/18 Javascript
在微信小程序里使用watch和computed的方法
2018/08/02 Javascript
实现Vue的markdown文档可以在线运行的方法示例
2018/12/11 Javascript
angular6开发steps步骤条组件
2019/07/04 Javascript
vue和小程序项目中使用iconfont的方法
2020/05/19 Javascript
electron踩坑之remote of undefined的解决
2020/10/06 Javascript
python正则分组的应用
2013/11/10 Python
Python中的探索性数据分析(功能式)
2017/12/22 Python
解决python字典对值(值为列表)赋值出现重复的问题
2019/01/20 Python
Python实现的文轩网爬虫完整示例
2019/05/16 Python
Django框架中序列化和反序列化的例子
2019/08/06 Python
django 解决扩展自带User表遇到的问题
2020/05/14 Python
重构Python代码的六个实例
2020/11/25 Python
HTML5 video 视频标签使用介绍
2014/02/03 HTML / CSS
大学生志愿者感言
2014/01/15 职场文书
简历的自我评价
2014/02/03 职场文书
弘扬职业精神演讲稿
2014/03/20 职场文书
联欢晚会主持词
2014/03/25 职场文书
《爱的教育》读书心得
2014/11/08 职场文书
2014年优质护理服务工作总结
2014/11/14 职场文书
2015年评职称个人工作总结
2015/10/15 职场文书