模块的导入

import导入模块 1. import 搜索路径

import sys
sys.path

路径搜索
  • 从上面列出的目录里依次查找要导入的模块文件
  • ' ' 表示当前路径
程序执行时导入模块路径
sys.path.append('/home/itcast/xxx')
sys.path.insert(0, '/home/itcast/xxx')    #可以确保先搜索这个路径
In [37]: sys.path.insert(0,"/home/python/xxxx")
In [38]: sys.path
Out[38]: 
['/home/python/xxxx',
 '',
 '/usr/bin', '/usr/lib/python35.zip', '/usr/lib/python3.5', '/usr/lib/python3.5/plat-x86_64-linux-gnu', '/usr/lib/python3.5/lib-dynload', '/usr/local/lib/python3.5/dist-packages', '/usr/lib/python3/dist-packages', '/usr/lib/python3/dist-packages/IPython/extensions', '/home/python/.ipython']

2. 重新导入模块

模块被导入后,import module不能重新导入模块,重新导入需用

  • 测试模块内容 

  • 调用模块中的方法 

  • 修改测试模块 

  • 重新加载模块 

循环导入

1. 什么是循环导入

a.py

from b import b 

print '---------this is module a.py----------'
def a():
    print("hello, a")
    b() 

a()

b.py

from a import a

print '----------this is module b.py----------'
def b():
    print("hello, b")

def c():
    a() 
c()

运行python a.py

2. 怎样避免循环导入

  1. 程序设计上分层,降低耦合
  2. 导入语句放在后面需要导入时再导入,例如放在函数体内导入

猜你喜欢

转载自www.cnblogs.com/alexzhang92/p/9416762.html