第十八天 PYTHON学习

【今日学习】

1.包的介绍

    1.1 什么是包:包就是一个包含有__init__.py文件的文件夹,所以其实我们创建包的目的就是为了用文件夹将文件/模块组织起来。

    1.2 为什么要使用包:

包的本质就是一个文件夹,那么文件夹唯一的功能就是将文件组织起来,随着功能越写越多,我们无法将所以功能都放到一个文件中,于是我们使用模块去组织功能,而随着模块越来越多,我们就需要用文件夹将模块文件组织起来,以此来提高程序的结构性和可维护性



1.3注意事项:

①.关于包相关的导入语句也分为import和from ... import ...两种,但是无论哪种,无论在什么位置,在导入时都必须遵循一个原则:凡是在导入时带点的,点的左边都必须是一个包,否则非法。可以带有一连串的点,如item.subitem.subsubitem,但都必须遵循这个原则。但对于导入后,在使用时就没有这种限制了,点的左边可以是包,模块,函数,类(它们都可以用点的方式调用自己的属性)。


②import导入文件时,产生名称空间中的名字来源于文件,import 包,产生的名称空间的名字同样来源于文件,即包下的__init__.py,导入包本质就是在导入该文件


③包A和包B下有同名模块也不会冲突,如A.a与B.a来自俩个命名空间

2.包的使用

2.1包的使用之import 

    ①单独导入包名称时不会导入包中所有包含的所有子模块

    ②需要注意的是from后import导入的模块,必须是明确的一个不能带点,否则会有语法错误,如:from a import b.c是错误语法

3.绝对导入与相对导入

相对导入的存在是为了可以在修改路径名时,不会改变调用取值路径,所以用相对导入法。

执行代码或模块 ,代表上一级

.. 执行代码或模块,代表上上一级

4.内置模块

内置模块是可以直接调用,不用考虑在哪个文件夹下,记住一些常用的模块名,以方便调用。

 【今日领悟】

1.在包内调用模块时,一定记住在—init—.py文件中导入模块,导入模块时注意导入路径要在调用模块所在的文件夹去寻找

2.import 后面一定是可执行的文件,import 包 ,其实质用——init——代替包去执行,所以需要把包内模块导入——init——.py文件中。

 

posted @ 2018-10-15 21:22  runjam  阅读(110)  评论(0编辑  收藏  举报