对python同一个文件夹里面不同.py文件的交叉引用方法详解


Posted in Python onDecember 15, 2018

比如有两个模块,一个aa.py,一个bb.py 代码如下:

aa.py:

#encoding:utf-8

import bb

a=1

bb.py:

#encoding:utf-8

import aa

print aa.a

执行bb.py时,不能执行,打印错误 AttributeError: 'module' object has no attribute 'a'

原因:

如果执行bb的话,这时候bb是__main__,不是module,所以会执行到bb的from aa,这个时候python会执行aa.py,而aa.py一开始就是from bb,所以python又会去执行bb.py,因为bb.py的一开始就是from aa,并且因为之前执行过,所以这个时候aa已经在sys.module里面,所以python不会重新执行aa.py,而只是把sys.modules里面的aa返回给你,所以当执行到bb.py的print b 的时候,还没有执行aa.py里面的a=1,所以会有找不到a的attribute error

解决方案:

aa.py:

#encoding:utf-8

import bb

a=1

bb.py:

#encoding:utf-8

import aa

if __name__=="__main__":

 print aa.a

以上这篇对python同一个文件夹里面不同.py文件的交叉引用方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中List的sort方法指南
Sep 01 Python
简单谈谈Python流程控制语句
Dec 04 Python
Python使用plotly绘制数据图表的方法
Jul 18 Python
python指定写入文件时的编码格式方法
Jun 07 Python
python3利用ctypes传入一个字符串类型的列表方法
Feb 12 Python
Python安装及Pycharm安装使用教程图解
Sep 20 Python
python实现的批量分析xml标签中各个类别个数功能示例
Dec 30 Python
python+gdal+遥感图像拼接(mosaic)的实例
Mar 10 Python
解决python多线程报错:AttributeError: Can't pickle local object问题
Apr 08 Python
Python实现自动打开电脑应用的示例代码
Apr 17 Python
python 解决pycharm运行py文件只有unittest选项的问题
Sep 01 Python
Python if else条件语句形式详解
Mar 24 Python
Python数据分析:手把手教你用Pandas生成可视化图表的教程
Dec 15 #Python
浅谈python 导入模块和解决文件句柄找不到问题
Dec 15 #Python
对python当中不在本路径的py文件的引用详解
Dec 15 #Python
对python3 中方法各种参数和返回值详解
Dec 15 #Python
对python中的argv和argc使用详解
Dec 15 #Python
Python输出\u编码将其转换成中文的实例
Dec 15 #Python
对python:print打印时加u的含义详解
Dec 15 #Python
You might like
短波收音机简介
2021/03/01 无线电
PHP查询数据库中满足条件的记录条数(两种实现方法)
2013/01/29 PHP
浅析php中如何在有限的内存中读取大文件
2013/07/02 PHP
php判断IP地址是否在多个IP段内
2020/08/18 PHP
Javascript 中的类和闭包
2010/01/08 Javascript
巧用js提交表单轻松解决一个页面有多个提交按钮
2013/11/17 Javascript
js 用CreateElement动态创建标签示例
2013/11/20 Javascript
解析Javascript中中括号“[]”的多义性
2013/12/03 Javascript
javascript 兼容各个浏览器的事件
2015/02/04 Javascript
详谈javascript中DOM的基本属性
2015/02/26 Javascript
九种原生js动画效果
2015/11/11 Javascript
判断JS对象是否拥有某属性的方法推荐
2016/05/12 Javascript
jQuery添加和删除输入文本框标签代码
2016/05/20 Javascript
js省市县三级联动效果实例
2020/04/15 Javascript
jQuery筛选数组之grep、each、inArray、map的用法及遍历json对象
2016/06/20 Javascript
jquery根据一个值来选中select下的option实例代码
2016/08/29 Javascript
基于Node.js + WebSocket打造即时聊天程序嗨聊
2016/11/29 Javascript
JS实现物体带缓冲的间歇运动效果示例
2016/12/22 Javascript
微信小程序 使用canvas制作K线实例详解
2017/01/12 Javascript
JS跨域请求外部服务器的资源
2017/02/06 Javascript
express框架实现基于Websocket建立的简易聊天室
2017/08/10 Javascript
详解为什么Vue中的v-if和v-for不建议一起用
2021/01/13 Vue.js
Python 内置函数complex详解
2016/10/23 Python
Apache如何部署django项目
2017/05/21 Python
启动Atom并运行python文件的步骤
2018/11/09 Python
使用matlab 判断两个矩阵是否相等的实例
2020/05/11 Python
html5 viewport使用方法示例详解
2013/12/02 HTML / CSS
伯克斯奥特莱斯:Burkes Outlet
2019/03/30 全球购物
中医专业应届生求职信
2013/11/17 职场文书
电焊工工作岗位职责
2014/02/06 职场文书
公关活动策划方案
2014/05/25 职场文书
教师群众路线学习心得体会
2014/11/04 职场文书
迟到检讨书
2015/01/26 职场文书
个人优缺点总结
2015/02/28 职场文书
工地材料员岗位职责
2015/04/11 职场文书
适合后台管理系统开发的12个前端框架(小结)
2021/06/29 Javascript