博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
相对导入中Attempted relative import in non-package问题
阅读量:6985 次
发布时间:2019-06-27

本文共 363 字,大约阅读时间需要 1 分钟。

这一篇应该是解释的比较清楚:

 

关键点是: 顶层的module运行时, 不能用相对导入, 即使顶层有init文件也不行.  因运行文件也在顶层, 看不到init的作用.

 

 

问题原因

不能在一个包里运行一个脚本文件,顶层的脚本文件不能用相对导入。

如果要将一个包作为一个脚本运行的话,需要将运行的脚本文件更名为__main__.py,然后再该包文件夹外运行该包的命令:

python -m testpackage

还有一种解决办法是在包外创建一个脚本文件,然后将包的内容导入到该脚本中。

 

参见:

 

这总是一个很麻烦的问题, 和pycharm的版本也有关系. 看来python在这一块做的不是很好.  碰到过相关问题很多次了. 

 

转载于:https://www.cnblogs.com/qingyuanjushi/p/6400067.html

你可能感兴趣的文章
codeforce#365D Free Market
查看>>
PHP&symfony
查看>>
docker和docker-compose 端口映射
查看>>
2013 Multi-University Training Contest 9 1011 Arc of Dream
查看>>
eclipse恢复界面默认设置
查看>>
MVC 自定义分面控件
查看>>
安装JDK 1.7时"could not locate a suitable jar utility"解决方案
查看>>
转载 linux内核 asmlinkage宏
查看>>
汉诺塔问题hdu 2065——找规律
查看>>
Yupoo(又拍网)的系统架构
查看>>
云计算平台(检索篇)-Elasticsearch
查看>>
关于让bootstrap3兼容ie8
查看>>
Android 软键盘的全面解析,让你不再怕控件被遮盖
查看>>
mvc 下拉框赋值
查看>>
301重定向的实现方法
查看>>
数据结构——树的简单操作集合
查看>>
单片机小白学步系列(十三) 点亮第一个LED——好的開始,成功的一半
查看>>
苹果safari浏览器window.open问题
查看>>
十分细微的收获
查看>>
C# 扩展方法
查看>>