x
# /usr/bin/env python (1):启始行
* this is a test module * (2):模块文档(文档字符串)
- this is a test module * (2):模块文档(文档字符串)
In [ ]:
# import sys (3):模块的导入
# import os
In [ ]:
# debug = True (4):(全局)变量的定义
In [ ]:
# class FooClass(object): (5):类的定义(若是有的话)
* Foo class *
pass
In [3]:
def test(): # (6):函数的定义(若是有的话)
test function
foo = FooClass()
if debug:
print ("ran test")
In [ ]:
if __name__ == '__main__': #(7):主程序
test()
# 主程序
- 无论当前模块是被别的模块导入还是作为脚本直接执行,都会执行这部分代码
- 注意:所有模块都有能力执行代码
- 1.最高级别的 pythuon 语句(没有缩进的在模块被导入时就会执,无论是否真的需要执行
- 2.妥当的做法:除了那些真需要执行的代码以外, 所有的功能代码都通过函数建立,因此
- (1):仅在主程序模块中编写大量的顶级可执行代码
- (2):用于被导入的模块只应该存放在较少的顶级执行代码
- __name__ 指示模块应该如何被加载
1.如果模块是被导入,__name__ 的值是模块名字
2.如果模块是直接执行,__name__的值是'__main__'
- 每个模块都要一个名为 __name__ 的内建变量,此变量值会根据调用此模块的方式发生变化,
。 如果此文件被作为模块导入, 到 __mane__ 的值为模块名称
如果此文件被直接执行,则 __name__ 的值为 __main__
主程序¶
- 无论当前模块是被别的模块导入还是作为脚本直接执行,都会执行这部分代码
- 注意:所有模块都有能力执行代码
- 1.最高级别的 pythuon 语句(没有缩进的在模块被导入时就会执,无论是否真的需要执行
- 2.妥当的做法:除了那些真需要执行的代码以外, 所有的功能代码都通过函数建立,因此
- (1):仅在主程序模块中编写大量的顶级可执行代码 - (2):用于被导入的模块只应该存放在较少的顶级执行代码
- name 指示模块应该如何被加载 1.如果模块是被导入,name 的值是模块名字 2.如果模块是直接执行,name的值是'main'
- 每个模块都要一个名为 name 的内建变量,此变量值会根据调用此模块的方式发生变化, 。 如果此文件被作为模块导入, 到 mane 的值为模块名称 如果此文件被直接执行,则 name 的值为 main