8. Python基础学习笔记——模块

[TODO]

  • 抽空学习一下PIL图像处理库,相信肯定有用处的
  • 研究下模块
  • 学习一下别人的代码

模块

  • 在Python中一个.py文件就可以称为一个模块
  • 分为置模块和第三方模块:提高代码的可维护性;可以被其他地方引用,无需重新造轮子
  • 最大程度避免函数名和变量名冲突。但是需要注意不要和内置函数名冲突。
  • 为了避免模块冲突,Python引入了包(package),按照目录来组织模块
  • 每一个包下面都有一个__init__.py文件存在,否则Python会把目录当成普通的目录,而不是一个包
  • 可以组成多层次的包结构

Python中所有内置函数

This is created automaticlly by a script written by Chris~ :)

  • abs()
  • all()
  • any()
  • ascii()
  • bin()
  • bool()
  • bytearray()
  • callable()
  • chr()
  • compile()
  • complex()
  • delattr()
  • dict()
  • dir()
  • divmod()
  • enumerate()
  • eval()
  • exec()
  • filter()
  • float()
  • format()
  • frozenset()
  • getattr()
  • globals()
  • hasattr()
  • hash()
  • help()
  • hex()
  • id()
  • input()
  • int()
  • isinstance()
  • issubclass()
  • iter()
  • len()
  • list()
  • locals()
  • map()
  • max()
  • memoryview()
  • min()
  • next()
  • object()
  • oct()
  • open()
  • ord()
  • open()
  • pow()
  • print()
  • print()
  • print()
  • property()
  • range()
  • repr()
  • reverse()
  • round()
  • set()
  • setattr()
  • slice()
  • sorted()
  • staticmethod()
  • str()
  • sum()
  • super()
  • tuple()
  • type()
  • vars()
  • zip()
  • import()

使用模块

  • Python安装后就有很多模块可以直接使用。
  • __任何模块代码的第一个字符串__都被视为模块的文档注释。
  • 使用下面的方法,方便让一个模块运行时执行一些额外的测试代码。当在其他地方导入模块时,if判断将会失效,测试代码将不会被执行。

    if __name__ == '__main__':
    do_something()

作用域

  • 类似于其他的语言,在Python中也存在公开变量和函数或者私有的变量和函数。在Python的模块中,一般用_或者__作为前缀,表示是私有的。
  • 需要注意的是__name__等是特殊变量
  • 我们一般可以用_my_func()来定义私有的函数等
  • 不应直接访问Python模块中的私有变量

安装第三方模块

  • 使用pip命令安装,如果是pip3,则使用下面的方式安装一个包:

    sudo pip3 install Pillow
  • Pillow(基于PIL, Python Imaging Library库开发)是Python下非常不错的图像处理库,详见其官方文档

模块搜索路径

  • Python会在指定的路径下搜索模块
  • 可以在sys.path中查看搜索路径
  • 两种方式添加自定义的模块搜索路径:
  • 直接修改sys.path,如sys.path.append('/home/some/scripts'),但这个是临时的。
  • 设置环境变量PYTHONPATH,该环境变量的内容会被自动添加到搜索路径中。

你可能感兴趣的:(8. Python基础学习笔记——模块)