模块

模块

  1. 一个.py文件就是一个模块(Module),为了避免模块名冲突,python引入了按目录来组织模块的方法,称为包(Package)。每个包目录下都要有一个__init__.py文件,必须存在,否则该目录就变成了普通目录,而不是一个包,__init__.py可以为空文件,__init__.py本身就是一个模块,模块名和该目录名相同
  2. 创建自己的模块时,注意不能和系统模块名冲突,通过在python交互环境import 该模块,查看系统是否存在该模块名
  3. 通过pypi工具把自己创建的包发布出去

使用模块

编写一个hello模块

#/user/bin/env python3
# -*- coding: utf-8 -*-

' a test module '

__author__ = 'Wayne'

import sys

def test():
    args = sys.argv
    if len(args)==1:
        print('Hello, world!')
    elif len(args)==2:
        print('Hello, %s!' % args[1])
    else:
        print('Too many arguments!')

if __name__ == '__main__':
    test()

第四行是个字符串,表示模块的文档注释,任何模块代码的第一个字符串都被视为模块的文档注释
通过命令行执行该.py文件,__name__为'__main__',当别的.py文件import该模块时,__name__为该模块名

作用域

正常的函数和变量名是公开的,可以被直接引用,如abc,x123,PI等,类似__xxx__这样的变量是特殊变量,可以被直接引用,但是有特殊用途,如__name__,__author__等,上述模块定义的文档注释可以通过__doc__访问,类似_xxx和__xxx是非公开的,不应被直接引用

安装第三方模块

posted @ 2020-03-05 09:45  WayneWW  阅读(105)  评论(0)    收藏  举报