Python基础——包

一.包

包就是文件夹,他用于存放文件也就是模块。包中也可以存放包

包就是一个包含了__init__.py文件的文件夹。

包只是模块的一种形式而已,包即模块。

二.包的导入:

分为import和from...inmort...两种

注意:1.凡是在导入时带点的,点的左边都必须是一个包,否则非法。可以带有一连串的点,如demo01.demo02.demo03,但都必须遵循这个原则。

2.对于导入后,在使用时就没有这种限制了,点的左边可以是包,模块,函数,类(它们都可以用点的方式调用自己的属性)。

3.对比import demo和from demo import name的应用场景:
如果我们想直接使用name那必须使用后者。

1.import导入:

2.from ... import ... 导入:

2.1.   from 包名 import 模块名

使用方式:模块名.变量名() 或者 print(模块名.变量名)

2.2  from 包名.模块名... import 变量名

使用方式: 例如 变量名() 或者print(变量名)

2.3  from 包名.模块名... import 变量名1,变量名2,...

使用方式: 例如 变量名1() 或者print(变量名2)

2.4 from 包名 import 模块名,模块名1...

使用方式:模块名.变量名() 或者 print(模块名1.变量名)

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

3.__init__.py文件

不管是哪种方式,只要是第一次导入包或者是包的任何其他部分,都会依次执行包下的__init__.py文件(我们可以在每个包的文件内都打印一行内容来验证一下),这个文件可以为空,但是也可以存放一些初始化包的代码。

4.from 包.模块 import *

使用__all__=[] 变量。

三.包的绝对导入和相对导入

1.绝对导入:base作为起始

测试:

2.相对导入:.或者..的方式最为起始(只能在一个包中使用,不能用于不同目录内)

测试:

 

猜你喜欢

转载自blog.csdn.net/weixin_43567965/article/details/86169197
今日推荐