Python 3基础教程20-Python中导入模块和包

本文介绍Python中导入模块和包

 1 #目录:
 2 # 导入模块和包---
 3 #   |
 4 # 上级包、上级模块、导入模块和包的init模块-----
 5 #   |
 6 # 同级包、同级模块、上级包的init模块、test模块--------
 7 #   |
 8 # 下级包、下级模块、同级包的init模块-----
 9 #   |
10 #最下级模块、下级包的init模块
11 
12 #以test模块为执行模块导入相应的模块
13 #导入同级模块
14 import 同级模块#直接导入单个模块并执行该模块
15 print(同级模块.name)#打印模块中的name属性
16 print('*'*30)
17 
18 #导入下级模块
19 # import 下级模块 #不能直接导入同级包下面的模块No module named '下级模块'
20 # print(下级模块.name)#打印模块中的name属性
21 #修改方法:
22 import 同级包.下级模块#导入同级包的下级模块,执行包的__init__模块和导入的模块
23 print(同级包.下级模块.name)#打印该模块的name属性
24 print('*'*30)
25 
26 #导入下下级模块
27 # import 下级包.最下级模块#No module named '下级包'
28 # print(下级包.最下级模块.name)
29 # import 同级包.最下级模块#No module named '同级包.最下级模块'
30 # print(同级包.最级模块.name)
31 #修改:
32 import 同级包.下级包.最下级模块
33 print(同级包.下级包.最下级模块.name)
34 print('*'*30)
35 
36 #导入上级模块
37 # import 上级模块#不能直接导入同级包上面的模块No module named '上级模块'’
38 # print(下级模块.name)#打印模块中的name属性
39 #修改方法
40 import 导入模块和包.上级模块#导入再上级包下的上级模块,执行包的__init__模块和导入的模块
41 print(导入模块和包.上级模块.name)
42 ----------------------------------------------
43 执行同级模块
44 同级模块
45 ******************************
46 同级包的init模块
47 执行下级模块
48 下级模块
49 ******************************
50 下级包的init模块
51 执行最下级模块
52 最下级模块
53 ******************************
54 导入模块和包
55 执行上级模块
56 上级模块
57 
58 导入模块

导入包:

 1 #导入包
 2 import 同级包 #导入同级包直接导入
 3 
 4 # print(同级包.下级模块.name)#module '同级包' has no attribute '下级模块'
 5 # 修改:若要使用包下的某个模块,可以在对应init模块中导入相应的模块
 6 
 7 # import 上级包#No module named '上级包'
 8 # import 下级包No module named '下级包'
 9 #为什么找不到对应的包:因为是在内置模块和sys.path中找,在对应的路径中并没有这个包
10 # 解决:
11 import sys
12 print(sys.path)
13 sys.path.append('E:\python_work\导入模块和包')
14 sys.path.append(r'E:python_work导入模块和包上级包同级包')
15 import 上级包
16 import 下级包
17 
18 
19 import 导入模块和包
20 ----------------------------------------------------------
21 同级包的init模块
22 ['E:\python_work\导入模块和包\上级包', 'E:\python_work', 'E:\python3.6.4\python36.zip', 'E:\python3.6.4\DLLs', 'E:\python3.6.4\lib', 'E:\python3.6.4', 'C:\Users\11373\AppData\Roaming\Python\Python36\site-packages', 'E:\python3.6.4\lib\site-packages', 'E:\python3.6.4\lib\site-packages\requests-2.18.4-py3.6.egg', 'E:\python3.6.4\lib\site-packages\pymongo-3.6.1-py3.6-win32.egg', 'E:\python3.6.4\lib\site-packages\easygui-0.98.1-py3.6.egg', 'E:\python3.6.4\lib\site-packages\jedi-0.12.0-py3.6.egg', 'E:\python3.6.4\lib\site-packages\parso-0.2.0-py3.6.egg', 'E:\pycharm\PyCharm 2017.3.3\helpers\pycharm_matplotlib_backend']
23 上级包的init模块
24 下级包的init模块
25 导入模块和包
26 
27 导入包
原文地址:https://www.cnblogs.com/wangyinghao/p/10636788.html