【attempted relative import beyond top-level package】
F1
|------F1_1
| |--__init__.py
| |--module1_1.py : class C1
|--__init__.py
|--current.py
|
F2
|--__init__.py
|--module2.py : class C2
|
main.py
##F1-F1_1-__init__.py中的内容
from .module import C1
以下运行环境是在main.py所在的目录
##current.py
from F1_1 import C1 #(1)报错
from ..F1.module2 import C2 #(2)报错
#------------------------
from .F1_1 import C1 #(3)不报错
from F1.module2 import C2 #(4)不报错
python导入包在索引的时候遵循这样的规则:
如果是不加比如".“/”…"(第二个是两个点),也就是说像类似于from dataset import Dataset
这使用的是绝对索引,也就是表示从运行环境开始的索引
但是如果加了,比如类似于 from .dataset import Dataset
那么就是相对索引,是相对于代码所在文件的环境的
由此:
(1)报错
发生异常: ModuleNotFoundError
No module named ‘F1_1’
这是因为环境是main.py,虽然current.py与F1_1在同一目录,但是环境并不在此,所以应该像(3)那样
(2)报错
发生异常: ValueError
attempted relative import beyond top-level package
这样为什么不可以呢?我也不知道,规定吧。导入顶级目录的包就只能用绝对索引的方式,像(4)那样。
【attempted relative import beyond top-level package】相关推荐
- 【ImportError】: attempted relative import with no known parent package
当你在运行的python脚本.使用了相对引用方式 (类似import -module) 去引用包时,可能会出现这个异常.ImportError: attempted relative import w ...
- [译][python]ImportError:attempted relative import with no known parent package
前言 在这篇文章中,我将会解析 ImportError: attempted relative import with no known parent package 这个异常的原因.当你在运行的py ...
- ImportError: attempted relative import with no known parent package
问题背景: 在windows中开发完对应的Pytest代码,在放到centos7.4时,出现这个错: 但是在windows中完美运行: 这个问题确实比较蛋疼,将近两三个小时浪费在这上面了: 概念理解: ...
- 成功解决ValueError: attempted relative import beyond top-level package
成功解决ValueError: attempted relative import beyond top-level package 目录 解决问题 解决思路 解决方法 解决问题 ValueError ...
- Python项目文件引用问题:ImportError: attempted relative import with no known parent package
一.问题说明: 在做一个项目,采用包的形式进行文件组织,运行代码是会报错ImportError: attempted relative import with no known parent pack ...
- 解决attempted relative import with no known parent package问题
假设有这样一个文件夹: - father_dir - son_1.py - son_2.py 当在son_2.py中调用son_1.py的 test 类时 调用的方式为: #导包 from .son_ ...
- Python相对导入:ValueError: attempted relative import beyond top-level package
首先明确,Python相对导入只能在同一package下而言的. 项目结构: relativeimport ├── __init__.py ├── modfail2.py ├── pack1 │ ...
- Python报错:ImportError: attempted relative import with no known parent package
目录 一.问题 二.解决 一.问题 运行代码出现报错:ImportError: attempted relative import with no known parent package 问题原因: ...
- Pycharm: ImportError: attempted relative import with no known parent package解决方案
不成熟的解决方案总结 1. 增加sources root,这样被引用的py中的相对路径(特指在路径前一个点两个点这种情况)就能使用了: 2. 引用其他py,不想使用全路径,可以右键被引用的py 复制他 ...
最新文章
- c语言ctype中替换查找字符,c – std :: ctype是否总是按“C”语言环境对字符进行分类?...
- 一种新的验证码(改进版)
- linux 源码安装 yum rpm区别
- [SIGMOD 10] Pregel 基于BSP的大规模图处理系统 学习总结
- linux apache 负载均衡,使用Apache作为前端负载均衡器
- 2021年下半年,你还可以把论文投给这 9 个国际会议
- Mathtype全文公式大小一致调整
- 正则表达式实现手机号中间4位数隐藏或者只显示末尾四位数
- PHP 数据库 ODBC
- 讲讲我对比特币和区块链的认知,挖矿不难,挖到难
- Java 中的线程管理概念梳理
- svn安装使用以及各种问题解决
- win7如何设置通电自动开机_win7系统设置自动开机
- 关于Ultraiso无法写入硬盘映像的相关解决办法
- windows逻辑卷扩容_Windows 动态磁盘卷:简单卷、跨区卷 、带区卷 、镜像卷 、RAID5卷 相关配置操作介绍...
- Win10开启黑色护眼暗黑主题
- 10个python入门小游戏,零基础打通关,就能掌握编程基础
- 引领大数据新未来 斐讯北京数据中心正式开业
- 项目管理SPM系统案例:山东省地矿工程勘察院项目管理系统
- io流中read与readline的区别