• 模块的导入


    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. 导入语句放在后面需要导入时再导入,例如放在函数体内导入
  • 相关阅读:
    磁盘相关命令
    shell $用法
    setuid setgid stick bit 特殊权限 粘滞位
    运维面试题2
    mysql 外键约束
    创建MySQL 用户
    shell 脚本定时创建月份表
    apache 配置多个虚拟主机,不同的端口
    sublime3中文乱码解决包ConvertToUTF8.zip
    yii2安装
  • 原文地址:https://www.cnblogs.com/alexzhang92/p/9416762.html
Copyright © 2020-2023  润新知