zoukankan      html  css  js  c++  java
  • Python 1-2模块的循环导入问题

    run.py文件:

    import m1 # 第一次导入

    # 验证解决方案一:

    '''

    正在导入m1

    正在导入m2

    '''

    # print(m1.x)

    # print(m1.y)

    # 验证解决方案二:

    import m1 # 第一次导入

    '''

    正在导入m1

    '''

    # print(m1.x)

    # print(m1.f1)

    m1.f1()

    '''

    正在导入m2

    m1.f1---->y:m2

    m2.f2--->x:m1

    '''

    m1.py文件:

    # 错误示范

    '''

    print('正在导入m1')

    from m2 import y #第一次导入m2

    x='m1'

    '''

    解决方案一: 把循环导入的语句放到名字定义的后面

    print('正在导入m1')

    x='m1'

    from m2 import y #第一次导入m2

    # 解决方案二: 将循环导入语句放到函数内

    print('正在导入m1')

    def f1():

        from m2 import y,f2 #第一次导入m2

        print('m1.f1---->y: ',y)

        f2()

    x='m1'

    m2.py文件:

    # 错误示范

    '''

    print('正在导入m2')

    from m1 import x

    y='m2'

    '''

    # 解决方案一: 把循环导入的语句放到名字定义的后面

    print('正在导入m2')

    y='m2'

    from m1 import x

    # 解决方案二: 将循环导入语句放到函数内

    print('正在导入m2')

    def f2():

        from m1 import x

        print('m2.f2--->x: ',x)

    y='m2'

    循环导入问题及解决方案一配图

     

    循环导入问题及解决方案二配图

     

  • 相关阅读:
    Django-序列化器
    HTTP请求头响应头的信息
    HTTP协议
    IAAS,PAAS,SAAS
    MySQL-部分名词解释
    MySQL-事务和特性
    用Java仿QQ界面聊天小项目
    25篇Java入门技术博客,送给准备入坑的你
    Java自学推荐书籍
    Java中的并发讲解
  • 原文地址:https://www.cnblogs.com/earon/p/9443326.html
Copyright © 2011-2022 走看看