释放双眼,带上耳机,听听看~!
本文介绍Python中导入模块和包
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59 11 #目录:
2 2 # 导入模块和包---
3 3 # |
4 4 # 上级包、上级模块、导入模块和包的init模块-----
5 5 # |
6 6 # 同级包、同级模块、上级包的init模块、test模块--------
7 7 # |
8 8 # 下级包、下级模块、同级包的init模块-----
9 9 # |
1010 #最下级模块、下级包的init模块
1111
1212 #以test模块为执行模块导入相应的模块
1313 #导入同级模块
1414 import 同级模块#直接导入单个模块并执行该模块
1515 print(同级模块.name)#打印模块中的name属性
1616 print('*'*30)
1717
1818 #导入下级模块
1919 # import 下级模块 #不能直接导入同级包下面的模块No module named '下级模块'
2020 # print(下级模块.name)#打印模块中的name属性
2121 #修改方法:
2222 import 同级包.下级模块#导入同级包的下级模块,执行包的__init__模块和导入的模块
2323 print(同级包.下级模块.name)#打印该模块的name属性
2424 print('*'*30)
2525
2626 #导入下下级模块
2727 # import 下级包.最下级模块#No module named '下级包'
2828 # print(下级包.最下级模块.name)
2929 # import 同级包.最下级模块#No module named '同级包.最下级模块'
3030 # print(同级包.最级模块.name)
3131 #修改:
3232 import 同级包.下级包.最下级模块
3333 print(同级包.下级包.最下级模块.name)
3434 print('*'*30)
3535
3636 #导入上级模块
3737 # import 上级模块#不能直接导入同级包上面的模块No module named '上级模块'’
3838 # print(下级模块.name)#打印模块中的name属性
3939 #修改方法
4040 import 导入模块和包.上级模块#导入再上级包下的上级模块,执行包的__init__模块和导入的模块
4141 print(导入模块和包.上级模块.name)
4242 ----------------------------------------------
4343 执行同级模块
4444 同级模块
4545 ******************************
4646 同级包的init模块
4747 执行下级模块
4848 下级模块
4949 ******************************
5050 下级包的init模块
5151 执行最下级模块
5252 最下级模块
5353 ******************************
5454 导入模块和包
5555 执行上级模块
5656 上级模块
5757
5858 导入模块
59
导入包:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 11 #导入包
2 2 import 同级包 #导入同级包直接导入
3 3
4 4 # print(同级包.下级模块.name)#module '同级包' has no attribute '下级模块'
5 5 # 修改:若要使用包下的某个模块,可以在对应init模块中导入相应的模块
6 6
7 7 # import 上级包#No module named '上级包'
8 8 # import 下级包No module named '下级包'
9 9 #为什么找不到对应的包:因为是在内置模块和sys.path中找,在对应的路径中并没有这个包
1010 # 解决:
1111 import sys
1212 print(sys.path)
1313 sys.path.append('E:\\python_work\\导入模块和包')
1414 sys.path.append(r'E:\python_work\导入模块和包\上级包\同级包')
1515 import 上级包
1616 import 下级包
1717
1818
1919 import 导入模块和包
2020 ----------------------------------------------------------
2121 同级包的init模块
2222 ['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']
2323 上级包的init模块
2424 下级包的init模块
2525 导入模块和包
2626
2727 导入包
28