本教材由知了传课辛苦制作而成,仅供学习使用,请勿用于商业用途!如进行转载请务必注明出处!谢谢!

Python基础-模块和包:

一、为什么需要模块和包:

随着项目越来越大,所有代码都放在一个文件中,已经不能满足我们的需求了。这时候就要将代码进行整理了,模块和包的出现就是为了解决这个问题的。模块可以将一些相关联的代码组合在一个py文件中,包可以将一些相关联的模块组合在一个文件夹中。

二、将一个模块导入到当前文件中的几种方式:

  1. import:导入某个模块。以后要使用模块中的函数或者方法或者变量,则需要使用模块名.xxx的形式调用。
  2. from xxx import xxx:从某个模块中导入某个对象或者方法等。也可以一次性的从模块中导入所有的对象。使用from xxx import *
  3. from a import b as c:从a中导入b并命名为c。以后在代码中引用b,通过c来引用。

三、包:

包其实本质上就是一个文件夹,将一些相关联的模块组合在一起。但是如果一个文件夹要让Python识别为一个包,则必须在这个文件夹中创建一个叫做__init__.py的文件。一个文件夹中只有拥有了__init__.py这个文件,才能被视为一个包。
在同一个包中的模块如果要互相导入,则只能通过相对的方式进行导入,即:from . import xxx

四、__all__

  1. 如果是在模块中写了这个变量,将控制from 模块名字 import *的行为。
  2. 如果在__init__.py文件中有这个变量,那么它将控制着from 包 import *的行为。

五、模块的搜索路径:

  1. 在当前目录下搜索模块。
  2. 在环境变量PYTHONPATH中搜索模块。
  3. Python安装路径下的Lib目录下查找。
  4. 使用os.path可以看到所有的查找路径。

六、模块的循环导入:

比如有现在目录中有两个模块,一个a.py,一个b.py。在a.py中引用了b。而在b.py中又引用了a,那么这时候就产生了循环导入,让两个导入都不能完成。

七、__name__

如果是作为主程序来运行,那么等于__main__,如果是作为被导入的方式运行,那么是这个文件的名称。

八、安装包或者模块:

可以通过pip或者easy_install安装。pip是现代化的一种安装包的方式,以下讲解pip的常用命令:

  1. 安装包:

    pip install requests
  2. 安装指定版本的包:

    pip install django == 1.10.6
  3. 卸载包:

    pip uninstall django
  4. 升级包:

    pip install -U requests
  5. 升级pip

    pip install -U pip
  6. 查看当前pip是哪个版本:

    pip --version
  7. 显示某个已安装的包的信息:

    pip show -f <包名>
  8. 列出当前环境下安装了哪些包:

    pip list
  9. 将当前环境安装的包全部列出来放在文件中:

    pip freeze > requirements.txt
  10. 从某个文件中安装包:

    pip install -r requirements.txt
  11. 临时更改安装源,以豆瓣源为例:

    pip install <包名> -i https://pypi.douban.com/simple
  12. 永久更改安装源:

    • windows操作系统:在当前用户目录下新建pip/pip.ini,然后在文件中添加以下代码:

      [global] index-url = https://pypi.douban.com/simple
    • Linux/Mac:在用户目录下新建.pip/pip.conf,然后在文件中添加以下代码:

      [global] index-url = https://pypi.douban.com/simple

1621人已阅读,今天你学习了吗?

添加新回复