首页 > 编程语言 >Python 引用问题 - ImportError: attempted relative import with no known parent package

Python 引用问题 - ImportError: attempted relative import with no known parent package

时间:2023-07-07 17:56:22浏览次数:45  
标签:code1 code2 parent package py folder1 relative no import

问题描述

近日在尝试引用其他文件的代码时,遇到了错误: ImportError: attempted relative import with no known parent package.
问题大致是这样的:我想在 code2.py 中引用 code1.py 的函数,如 from ..folder1.code1 import xxx,运行 code2.py 时出现错误。

root
├── folder1
│   └── code1.py
├── folder2
│   └── code2.py
└── main.py

太长不看版

如果你要在 code2.py 中引用 code1.py 的函数,那么可以:

  • 改变文件结构,考虑在 main.py 中调用,运行 main.py
  • code2.py 中增加 root 的位置到搜索路径 sys.path.append, 代码使用 from folder1.code1 import xxx
  • -m 选项运行: python -m root.folder2.code2,代码可以使用 from folder1.code1 import xxxfrom ..folder1.code1 import xxx [我认为这是最优解!

    标签:code1,code2,parent,package,py,folder1,relative,no,import
    From: https://www.cnblogs.com/zkmjolnir/p/17535294.html

相关文章

  • mono_inertial_euroc.cc
    从main函数开始讲解,##表示源码判断参数是否大于等于5个,否则,输入有误,直接返回,正确执行参数如下./Examples/Monocular-Inertial/mono_inertial_euroc./Vocabulary/ORBvoc.txt./Examples/Monocular-Inertial/EuRoC.yaml${dir}/MH01./Examples/Monocular-Inertial/EuRoC_TimeS......
  • Node.js 常用知识
    1、安装、卸载modules参考:https://www.cnblogs.com/phpjason/p/16354320.htmlnpminstallxxx下载安装包到[email protected]可以精确下载某个版本npminstall--savexxx下载的安装包信息写入到package.json中的dependencies列表中npminstall--save-......
  • 【雕爷学编程】Arduino动手做(154)---AFMotor电机扩展板模块3
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞......
  • 【雕爷学编程】Arduino动手做(154)---AFMotor电机扩展板模块2
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞......
  • 麒麟V10安装好MySQL后报错Unit mysql.service could not be found
    导言:这个错误消息表示系统中找不到名为"mysql.service"的服务单元,通常意味着MySQL数据库服务器未正确安装或已卸载.。1.检查MySQL是否已正确安装:确认已经按照正确的方式安装了MySQL数据库服务器,可以参考MySQL官方文档或其他安装指南来确保正确安装。2.检查服务名称:确......
  • 20230706-NOIP模拟赛
    20230706T1.骰子游戏(dice)题目大意给你两个正整数\(n\)和\(d\),你需要构造\(n\)组数据,每组6个整数满足整数都在\([0,10^6]\)范围内,每组数据中两两不同,在每组数据中分别随机选一个数所得到的异或和为\(d\)的倍数如果能构造出这样的\(n\)组数据,请先输出‘Yes’,随后输......
  • BZOJ 2730: [HNOI2012]矿场搭建 tarjan割点
    2730:[HNOI2012]矿场搭建TimeLimit: 10Sec  MemoryLimit: 128MBSubmit: 2010  Solved: 935[Submit][Status][Discuss]Description煤矿工地可以看成是由隧道连接挖煤点组成的无向图。为安全起见,希望在工地发生事故时所有挖煤点的工人都能有一条出路逃到救援出口......
  • BZOJ 1415: [Noi2005]聪聪和可可 期望dp
    1415:[Noi2005]聪聪和可可TimeLimit: 10Sec  MemoryLimit: 162MBSubmit: 1682  Solved: 991[Submit][Status][Discuss]DescriptionInput数据的第1行为两个整数N和E,以空格分隔,分别表示森林中的景点数和连接相邻景点的路的条数。第2行包含两个整数C和M,以空格分......
  • 如何实现Android studio .gitignore没生效的具体操作步骤
    解决AndroidStudio.gitignore没生效问题简介在使用AndroidStudio开发Android应用时,我们通常会使用版本控制系统Git来管理代码。然而,有时候我们会发现.gitignore文件中定义的忽略规则并没有生效,导致一些不必要的文件被提交到Git仓库中。本文将介绍如何解决这个问题。解决流程......
  • BZOJ 1725: [Usaco2006 Nov]Corn Fields牧场的安排 状压dp
    1725:[Usaco2006Nov]CornFields牧场的安排TimeLimit: 5Sec  MemoryLimit: 64MBSubmit: 698  Solved: 489[Submit][Status][Discuss]DescriptionFarmerJohn新买了一块长方形的牧场,这块牧场被划分成M列N行(1<=M<=12;1<=N<=12),每一格都是一块正方形的土地。FJ......