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中join和split用法实例
Apr 14 Python
Python中的FTP通信模块ftplib的用法整理
Jul 08 Python
python2.7的编码问题与解决方法
Oct 04 Python
Python星号*与**用法分析
Feb 02 Python
python中找出numpy array数组的最值及其索引方法
Apr 17 Python
python selenium 对浏览器标签页进行关闭和切换的方法
May 21 Python
Python中pandas模块DataFrame创建方法示例
Jun 20 Python
python 获取图片分辨率的方法
Jan 08 Python
django model的update时auto_now不被更新的原因及解决方式
Apr 01 Python
如何在mac下配置python虚拟环境
Jul 06 Python
Django中Aggregation聚合的基本使用方法
Jul 09 Python
简单的Python人脸识别系统
Jul 14 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
PHP数组操作实例分析【添加,删除,计算,反转,排序,查找等】
2016/12/24 PHP
PHP html_entity_decode()函数讲解
2019/02/25 PHP
javascript实现window.print()去除页眉页脚
2014/12/30 Javascript
javascript实现点击提交按钮后显示loading的方法
2015/07/03 Javascript
JS实现弹性漂浮效果的广告代码
2015/09/02 Javascript
jquery中cookie用法实例详解(获取,存储,删除等)
2016/01/04 Javascript
javascript小数精度丢失的完美解决方法
2016/05/31 Javascript
JS防止网页被嵌入iframe框架的方法分析
2016/09/13 Javascript
JS对象的深度克隆方法示例
2017/03/16 Javascript
VUE页面中加载外部HTML的示例代码
2017/09/20 Javascript
Node 升级到最新稳定版的方法分享
2018/05/17 Javascript
微信小程序实现跑马灯效果完整代码(附效果图)
2018/05/30 Javascript
jQuery实现列表的增加和删除功能
2018/06/14 jQuery
node thread.sleep实现示例
2018/06/20 Javascript
详解Vue项目中实现锚点定位
2019/04/24 Javascript
微信小程序实现拍照画布指定区域生成图片
2019/07/18 Javascript
详解Vue3中对VDOM的改进
2020/04/23 Javascript
javascript实现贪吃蛇小游戏
2020/07/28 Javascript
Python使用MD5加密字符串示例
2014/08/22 Python
在IIS服务器上以CGI方式运行Python脚本的教程
2015/04/25 Python
Python实现的计算器功能示例
2018/04/26 Python
python 读取DICOM头文件的实例
2018/05/07 Python
Python数据分析:手把手教你用Pandas生成可视化图表的教程
2018/12/15 Python
基于python实现删除指定文件类型
2020/07/21 Python
python爬取豆瓣电影排行榜(requests)的示例代码
2021/02/18 Python
美国折扣网站:jClub
2017/08/07 全球购物
乌克兰网上服装店:Bolf.ua
2018/10/30 全球购物
求职简历的自我评价怎样写好
2013/10/07 职场文书
车辆工程专业求职信
2014/04/28 职场文书
运动会口号8字
2014/06/07 职场文书
财务管理专业求职信
2014/06/11 职场文书
篮球兴趣小组活动总结
2014/07/07 职场文书
体检通知范文
2015/04/21 职场文书
离婚民事起诉状
2015/08/03 职场文书
为什么MySQL 删除表数据 磁盘空间还一直被占用
2021/10/16 MySQL
德劲DE1102数字调谐收音机机评
2022/04/07 无线电