Python模块文件结构代码详解

yipeiwu_com5年前Python基础

本文研究的主要是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数据分析的时候,首先要进行数据预处理。 有时候不得不处理一些非数值类别的数据,嗯, 今天要说的就是面对这些数据该如何处理。 目前了解到的大概有三种方法: 1,通过Lab...

基于Python实现的扫雷游戏实例代码

本文实例借鉴mvc模式,核心数据为model,维护1个矩阵,0表无雷,1表雷,-1表已经检测过。 本例使用python的tkinter做gui,由于没考虑可用性问题,因此UI比较难看,p...

python3生成随机数实例

本文实例讲述了python3生成随机数的方法。分享给大家供大家参考。具体实现方法如下: 该实例是根据一本书上看到过一个随机数的小程序,经过自己改动,变为了一个猜数字的小游戏,现在在pyt...

Python cookbook(数据结构与算法)将多个映射合并为单个映射的方法

本文实例讲述了Python将多个映射合并为单个映射的方法。分享给大家供大家参考,具体如下: 问题:在逻辑上将多个字典或映射合并为一个单独的映射结构,以此执行某些特定的操作,比如查找值或者...

python提取内容关键词的方法

本文实例讲述了python提取内容关键词的方法。分享给大家供大家参考。具体分析如下: 一个非常高效的提取内容关键词的python代码,这段代码只能用于英文文章内容,中文因为要分词,这段代...