Python 进行debug的错误most likely due to a circular import
最近在学习爬虫,准备debug,就是点击那个小瓢虫的时候出现了一行错误
ImportError: cannot import name 'namedtuple' from partially initialized module 'collections' (most likely due to a circular import)
就是说有循环的导入。
循环导入是什么?
a.py
from b import b01def a01:passprint('我是a,我引入了b')
b.py
form a import a01def b01:passprint('我是b,我引入了a')
这种就是循环引入,类似于要一颗蛋需要一只鸡,要一只鸡需要一颗蛋的问题,系统不知道先给你鸡还是先给你蛋,就会报错。
排查步骤
先说结论,绝大部分就是因为开发者用了Python内置的一些关键词来命名py文件了。
我这个,以log中出现的自己写的代码行(图中马赛克那行)为界,将log分为上下两部分。箭头的地方这三个区域要特别注意,你的py文件名字一定别和他们重名。
我的错误很明显,就是我的一个文件命名为了keyword文件,和Python库自带的keyword文件冲突了。所以会报错。
解决方案就是将上图log中自己的代码行在的py文件(第二部分的第一行的文件)重新命名就可以了。
原因
我自己的keyword文件的import关系是这样的(a→b表示引入a import b)
我的keyword文件 → json → decoder → re → functools → collecitons → 系统的keyword文件
简写就是
我的keyword → collections → 系统的keyword
由于俩文件重名,导致开发环境无法区别,就会报出most likely due to a circular import的错误。
Python 进行debug的错误most likely due to a circular import相关推荐
- partially initialized module ‘numpy‘ has no attribute ‘array‘ (most likely due to a circular import)
partially initialized module 'numpy' has no attribute 'array' (most likely due to a circular import) ...
- 【ModuleNotFoundError 与 ImportError】之 most likely due to a circular import
目录 前言 1 示例 2 解释器的操作步骤 3 错误分析 4 解决办法 5 运行示例 总结 前言 提示:这里可以添加本文要记录的大概内容: "most likely due to a cir ...
- python 报错 most likely due to a circular import 解决方法
原因各个python文件,互相引用,造成的 循环引用问题. 解决方法:把需要引用的独立成一个文件,让其单向引用 使用python写一个稍微大一点的工程时,经常会遇到循环import,即cicular ...
- WINDOWS在jupyter notebook中导入opencv显示报错:most likely due to a circular import
问题:已有python,在经过下载anacoda后欲导入opencv报错 当时思路:先把电脑中含有有opencv的文件删除,重新安装opencv 然后在CSDN中查解决方案: 经过在anaconda中 ...
- python打包文件提示错误
ModuleNotFoundError: No module named 'numpy.distutils'------------- 如何解决? 添加: import numpy.distutils ...
- python中遇到循环import即circular import的问题原理剖析及解决方案
在python中常常会遇到循环import即circular import的问题,今天主要给大家介绍了关于Python中循环引用(import)失败的解决方法,文中通过示例代码介绍的非常详细,需要的朋 ...
- 解决cannot import name ‘XXX‘ from partially initialized module ‘XXX‘ (most likely due to a circular...
解决cannot import name 'XXX' from partially initialized module 'XXX' (most likely due to a circular im ...
- python做caffe debug layer错误可能原因 CallObjectWithKeywords train.sh: line 60: 9024 Segmentation fault
之前做过的尝试. 查看protoc的版本:protoc --version 然后pip安装和上述一致的版本.没有解决,然后下面暂时解决了.类似于 pip install --user --upgrad ...
- python中debug有什么用途_史上最方便的Python Debug工具
最近在github上冒出了一个python的debug神器PySnooper,号称在debug时可以消灭print.那么该工具有哪些优点呢,如何使用该工具呢.本文就介绍该工具的优缺点和使用方式. 前言 ...
- python编写应用程序错误_运行简单的Python Flask web应用程序时出错
嗨,伙计们,我在运行烧瓶代码时出错了.我在做Udemy的课程(python mega课程): 下列过帐代码和错误: 代码: 从烧瓶导入烧瓶,呈现模板app=Flask(__name__) @app.r ...
最新文章
- php留言板入门教程,一个php留言板实例详解(附源码下载)
- C++ 发手机短信(很易很简单)
- mysql 1067 42000_MySQL:ERROR 1067 (42000): Invalid default value for 'end_time'
- python中函数提高代码执行速度吗_为什么Python代码在一个函数中运行得更快?
- 函数参数的传递问题(一级指针和二级指针)
- C语言,画吃豆人剖析
- 基于 MVP 的 Android 组件化开发框架实践 1
- Anbox之Ubuntu18.04安装(二)
- mysql限制用户只能访问指定数据库
- 数据结构与算法python—12.二叉搜索树及python实现与leetcode总结
- input type=file与cursor:pointer的兼容性问题
- 【渝粤教育】国家开放大学2018年秋季 0631-21T动物常见病防治 参考试题
- 23.3.3 Web存储机制【JavaScript高级程序设计第三版】
- PyQt4--下拉列表QComboBox
- 知乎 高级操作系统_知乎问题:高级运营和普通运营有哪些区别?(更新版,赞赞赞!)...
- 浏览器书签有效性验证
- T1089 三人行必有我师
- pwnable.kr之mistake
- iOS上架详细通关教程(提交到AppStore)
- HCIP 综合实验(一)