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定时采集摄像头图像上传ftp服务器功能实现
Dec 23 Python
Python实现多行注释的另类方法
Aug 22 Python
python中set常用操作汇总
Jun 30 Python
Python无损音乐搜索引擎实现代码
Feb 02 Python
python3实现猜数字游戏
Dec 07 Python
Python跳出多重循环的方法示例
Jul 03 Python
python实现图像检索的三种(直方图/OpenCV/哈希法)
Aug 08 Python
PyTorch预训练的实现
Sep 18 Python
手机使用python操作图片文件(pydroid3)过程详解
Sep 25 Python
Django 解决上传文件时,request.FILES为空的问题
May 20 Python
Python如何重新加载模块
Jul 29 Python
用Python自动清理电脑内重复文件,只要10行代码(自动脚本)
Jan 09 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
ftp类(myftp.php)
2006/10/09 PHP
一个PHP操作Access类(PHP+ODBC+Access)
2007/01/02 PHP
PHP 服务器配置(使用Apache及IIS两种方法)
2009/06/01 PHP
php实现读取和写入tab分割的文件
2015/06/01 PHP
浅谈php(codeigniter)安全性注意事项
2017/04/06 PHP
解决出现SoapFault (looks like we got no XML document)的问题
2017/06/24 PHP
仿新浪微博返回顶部的jquery实现代码
2012/10/01 Javascript
使用Java实现简单的server/client回显功能的方法介绍
2013/05/03 Javascript
Extjs中ComboBoxTree实现的下拉框树效果(自写)
2013/05/28 Javascript
基于jquery的simpleValidate简易验证插件
2014/01/31 Javascript
实例讲解JS中setTimeout()的用法
2016/01/28 Javascript
ES6中如何使用Set和WeakSet
2016/03/10 Javascript
JS区分浏览器页面是刷新还是关闭
2016/04/17 Javascript
详解AngularJS用Interceptors来统一处理HTTP请求和响应
2017/06/08 Javascript
Angular4项目中添加i18n国际化插件ngx-translate的步骤详解
2017/07/02 Javascript
JS简单实现数组去重的方法分析
2017/10/14 Javascript
使用Vue.js中的过滤器实现幂方求值的方法
2019/08/27 Javascript
VUE DEMO之模拟登录个人中心页面之间数据传值实例
2019/10/31 Javascript
python实现感知器算法详解
2017/12/19 Python
详解python中的json和字典dict
2018/06/22 Python
详解Python下Flask-ApScheduler快速指南
2018/11/04 Python
Python数据库小程序源代码
2019/09/15 Python
python代码如何实现余弦相似性计算
2020/02/09 Python
Python实现Word文档转换Markdown的示例
2020/12/22 Python
多视角3D逼真HTML5水波动画
2016/03/03 HTML / CSS
天猫精选:上天猫,就够了
2016/09/21 全球购物
Python文件操作的面试题
2013/06/22 面试题
党校培训思想汇报
2013/12/30 职场文书
认识深刻的检讨书
2014/02/16 职场文书
同学聚会策划方案
2014/06/06 职场文书
人力资源管理求职信
2014/08/07 职场文书
小学教师年度个人总结
2015/02/05 职场文书
2015年社区综治宣传月活动总结
2015/03/25 职场文书
消防安全月活动总结
2015/05/08 职场文书
驳回起诉民事裁定书
2015/05/19 职场文书
简单实现一个手持弹幕功能+文字抖动特效
2021/03/31 HTML / CSS