目录
(2)from 包名.模块名..... import 变量名或者函数名
(3)from 包名.模块名... import 变量名1,变量名2........
(1)在demo04的dmeo04_test01中导入demo03的demo03_test01()
当脚本运行的时候,可以正常执行,但是在别的地方运行,路径会发生变化,运行就可能出错
2.要想调用包下的所有模块,在包下的__init__.py文件中写:
2.在命令行中写:python3 setup.py build build
3.在命令行中写:pytohn3 setup.py sdist dist 把刚才的东西打成一个压缩包
cd.. (setup.py的路径) pyhhon3 setup.py install
一、包 package
文件夹,包含一个__init__.py文件的文件夹
二、包的导入
1.导入原则
凡是在导入时带点的,点的左边就是一个包
2.导入方式
import....方式 | import 包名.模块名 | |
form .....import ..方式 | from 包名.模块名..... import 变量名或者函数名 | from后import 引入的模块,必须明确的一个不能带点,否则会有语法错误 |
from 包名.模块名... import 变量名1,变量名2........ | ||
from 包名.模块名.... import 模块名 |
||
from 包名.模块名 import * | 不能导入模块中的所有东西,只能导入__init__.py的东西 |
在demo01下的demo01_test02导入demo01_test01,并调用demo01_test01中的函数与变量
(1)import 包名.模块名
# import 包名.模块名
import python1224.demo01.demo01_test01
# 调用方式:模块名.变量名或函数
python1224.demo01.demo01_test01.test001()
python1224.demo01.demo01_test01.test01()
(2)from 包名.模块名..... import 变量名或者函数名
# from 包名.模块名.... import 变量名或函数名
from python1224.demo01.demo01_test01 import test01
test01()
from python1224.demo01.demo01_test01 import test001
test001()
(3)from 包名.模块名... import 变量名1,变量名2........
# from 包名.模块名..... import 变量名,函数名
from python1224.demo01.demo01_test01 import test01, test001
test01()
test001()
(4)from 包名.模块名.... import 模块名
# from 包名.模块名.... import 模块名
from python1224.demo01 import demo01_test01
# 调用方式:模块名.变量名或函数名
demo01_test01.test01()
demo01_test01.test001()
(5)from 包名.模块名 import *
- 要想调用demo02里面的所有模块,必须在demo02下的__init__.py中定义名字,在__init__.py中写入__all__
-
在根目录下的其他模块导入时就没有问题了
三、包的绝对导入和相对导入
(同级目录下的包与包之间的相互调用)
1.绝对导入
以根目录为起点