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文件及目录操作实例详解
Jun 04 Python
python中is与双等于号“==”的区别示例详解
Nov 21 Python
Python实现将照片变成卡通图片的方法【基于opencv】
Jan 17 Python
python按时间排序目录下的文件实现方法
Oct 17 Python
scrapy-redis的安装部署步骤讲解
Feb 27 Python
selenium获取当前页面的url、源码、title的方法
Jun 12 Python
python 默认参数相关知识详解
Sep 18 Python
python根据文本生成词云图代码实例
Nov 15 Python
使用Rasterio读取栅格数据的实例讲解
Nov 26 Python
python实现音乐播放器 python实现花框音乐盒子
Feb 25 Python
Python中免验证跳转到内容页的实例代码
Oct 23 Python
Django数据库迁移常见使用方法
Nov 12 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中的global
2014/08/19 PHP
php中 ob_start等函数截取标准输出的方法
2015/06/22 PHP
PDO实现学生管理系统
2020/03/21 PHP
JavaScript在IE中“意外地调用了方法或属性访问”
2008/11/19 Javascript
php对mongodb的扩展(初识如故)
2012/11/11 Javascript
JavaScript 上万关键字瞬间匹配实现代码
2013/07/07 Javascript
解决json日期格式问题的3种方法
2014/02/02 Javascript
javascript/jquery获取地址栏url参数的方法
2014/03/05 Javascript
jquery 扑捉回车键事件代码
2014/04/24 Javascript
有关jquery与DOM节点操作方法和属性记录
2016/04/15 Javascript
如何利用JSHint减少JavaScript的错误
2016/08/23 Javascript
微信小程序 wxapp视图容器 view详解
2016/10/31 Javascript
详解Vue CLI3配置解析之css.extract
2018/09/14 Javascript
vue-router 中 meta的用法详解
2019/11/01 Javascript
Javascript 类型转换、封闭函数及常见内置对象操作示例
2019/11/15 Javascript
原生js实现购物车
2020/09/23 Javascript
通过python下载FTP上的文件夹的实现代码
2013/02/10 Python
python基础教程之面向对象的一些概念
2014/08/29 Python
python中反射用法实例
2015/03/27 Python
简单解析Django框架中的表单验证
2015/07/17 Python
python实现汉诺塔递归算法经典案例
2021/03/01 Python
python3 pygame实现接小球游戏
2019/05/14 Python
PyQt5响应回车事件的方法
2019/06/25 Python
tensorflow的ckpt及pb模型持久化方式及转化详解
2020/02/12 Python
使用python实现下载我们想听的歌曲,速度超快
2020/07/09 Python
使用Django的JsonResponse返回数据的实现
2021/01/15 Python
html5需遵循的6个设计原则
2016/04/27 HTML / CSS
英国户外服装、鞋类和设备的领先零售商:Millets
2020/10/12 全球购物
计算机科学与技术应届生求职信
2013/11/07 职场文书
幼教简历自我评价
2014/01/28 职场文书
小学竞选班长演讲稿
2014/09/09 职场文书
学校艾滋病宣传活动总结
2015/05/09 职场文书
2015年党风廉政建设个人总结
2015/08/18 职场文书
餐饮行业关注的9大营销策略
2019/08/26 职场文书
如何使用pdb进行Python调试
2021/06/30 Python
JS中forEach()、map()、every()、some()和filter()的用法
2022/05/11 Javascript