• Python学习基础笔记七十一——模块和库2


    将模块放入包中

    模块文件,功能分的比较清晰。文件与文件之间,是通过import这种调用关系。

    当我们的项目模块文件特别多的时候,我们还需要将这些模块文件根据功能划分到不同的目录中。

    这些放模块文件的目录,python把它们称之为package。

    包目录中需要有一个名字为__init__.py的初始化文件,有了它,python才认为这是一个python包。

    Python3.3 以后版本的解释器,如果目录只是用来存放模块文件,就不需要一个空的__init__.py文件了。通常都还带着这个初始化文件。

    __init__.py可以用着包的初始化文件,里面放一些初始化代码,有独特的作用。

    调用模块里的函数。

    stockleft,这是一个函数对象。

    stock.food.beef 这是一个模块。

    库的概念:

    如果你写的模块文件里面的函数,实现了通用的功能,经常被其他模块所调用,我们就可以把这些调用的模块文件称之为

    库是一个抽象的概念,只要某个模块或者一组模块,开发它们的目的就是给其他模块调用的,就可以称之为库。

    Python标准库:

    Python语言提供了功能丰富的标准库。这些标准库把开发中常用的功能都做好了。

    我们可以直接使用它们。

    这些标准库里面有一部分叫做内置类型内置函数

    内置类型和内置函数无需使用import导入,直接可以使用。

    内置类型:int float str list tuple等。

    内置函数:int str print type len函数等。

    还有一些库,需要使用import导入,才能使用。

    常见的有sys、os、time、datetime、json等等。

    这些库是开发人员帮我们写好了,他们知道我们经常需要哪些代码。

    解释器怎么找到模块文件?

    首先它在解释器内置模块中寻找是否有XXX。

    所谓内置模块,就是内置在Python解释器程序中的模块。它们使用C语言编写的,编译链接在解释器里面。

    也就是说他们是解释器的一部分,所以解释器运行时,他们就在解释器里面,无需查找。

    1. import sys
    2. print(sys.builtin_module_names)
    3. for path in sys.path:
    4. print(path)

    这个sys.path 是一个列表,这个列表里包含了一些路径。

    当我们import一个模块的时候,解释器会依次上面列出的目录下面去寻找。

    这里面都是标准库的目录保存的路径。

    其中.zip是一个压缩的包的目录文件。

    我们自己开发写的模块文件,我们要去导入它的时候,在项目的路径下。

    解释器启动的时候,是从根据下面这些规则添加路径到sys.path列表里的。

    启动脚本文件所在的目录

    当前工作目录

    PYTHONPATH环境变量的目录

    Python解释器缺省的安装目录

    如果我们自己想添加一些目录,作为模块搜索路径:

    并且是永久的。

      

    注意的是:模块搜索路径和import后面的路径合起来是一个完整的路径。

    了解环境变量很重要,不仅仅是Python编程需要了解它。

    例如:os的库:

    print(os.__file__)

  • 相关阅读:
    《Unix系统编程手册》第三章系统编程概念学习
    makefile的编写:由浅入深
    VL600威锋typeC 转HDMI转接单芯片方案,支持DP1.4两LANE实现4K60,
    【十二】图解mybatis日志模块之设计模式
    手把手带你安装和使用 Git
    美国SAFECOM发布《采用公共安全云计算的注意事项》指南
    嵌入式开发需要具备什么技能才能在这个行业躺平
    ArcGIS:如何进行缓冲区分析(以市区选择住房位置为例)?
    【Rust 入门学习】3.1 通用的编程概念
    Jmeter(109)——Transaction Controller
  • 原文地址:https://blog.csdn.net/chang_chunhua/article/details/133840231