Python+VScode 两个不同文件夹里的py文件相互调用|python的模块调用|绝对导入

news2024/11/15 8:43:56

第一次用VScode写python遇到了模块无法识别的问题,搞了一整天,

上网查,chatGPT都不行,现在时解决了。

首先项目结构如下,四个文件夹,四个py文件

代码:

def f1fun():
    print("f1")
def f2fun():
    print("f2")

print("f2 Run:")

from d1 import f1
f1.f1fun()

from d3.d4 import f4
f4.f4fun()
def f4fun():
    print("f4")
from d1 import f1
from d2 import f2
from d3.d4 import f4

print("main Run:")
f1.f1fun()
f2.f2fun()
f4.f4fun()

现在运行f2 .py

报错:No module named 'd1'

在VScode里不像PyCharm模块不能直接点击运行,要使用终端命令行

确保首先对所有py文件ctrl+c保存,保存了代码才能生效

如上图所示,在VScode里点击TERMINAL,打开终端,输入

python -m d2.f2

成功在f2.py里运行了另外两个不同文件夹内f1.py,f4.py的函数

同时左边的项目结构也发生了变化,勾红的是刚刚运行时自动多出来的文件,至关重要,

而且名字也是有特点的,f1.py对应了f1.cpython-312.pyc,

即xxx.py对应xxx.cpython-312.pyc

关键点

如果你的VScode能生成上面那种的文件,那就不能运行成功

或者生成的不是对应的不如xxx.py对应yyy.cpython-312.pyc,也是不能成功的。

那么ctrl+shift+p,输入pythonsel,选择点击

然后选择好已经安装的Python,从而确保VScode能找到

这样如果还不行,那就试试开始页里有没有python、jupiter的new选项,

这里有一个java的updated选项,因为我点过了,所有没有显示了。

如果有,点击new然后在出现的页面把所有都勾选上。然后回来再运行看看

对于根目录下的main.py则没用那么麻烦可以直接点击运行

有需要进一步了解的可以私信。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2084533.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智能交通最新论文分享┆使用STG-Mamba进行时空图数据预测

论文简介 本推文主要介绍了一种基于选择性状态空间模型的时空图学习方法,论文标题为《STG-Mamba: Spatial-Temporal Graph Learning via Selective State Space Model》,第一作者为Lincan Li。时空图数据是一类广泛存在于日常生活中的非欧几里得数据&am…

双系统ubuntu引导项丢失如何修复

本来是win11和ubunt22.04的双系统,但是现在工作需要做一个外接固态里安装ubunt22.04去安装autoware, 按照装双系统的方法也装上了,引导项不知怎么回事,被设置在外接固态硬盘中了,导致开机必须插上外接固态才能进入引导项&#xff…

企业源代码加密软件有哪些?12款超好用的源代码加密软件推荐

在当今数字化的商业环境中,源代码作为企业核心竞争力的象征,保护其不被泄露和篡改显得尤为重要。源代码加密软件能够有效防止未经授权的访问、使用或分发,从而确保企业的知识产权和商业秘密不受侵害。本文将为您推荐12款超好用的源代码加密软…

基于yolov8的飞鸟检测系统python源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv8的飞鸟检测系统是一个利用深度学习技术进行鸟类识别的应用。YOLOv8作为目前最先进的实时目标检测模型之一,以其高准确率和快速检测能力著称。下面简要介绍一个基于Python实现的飞鸟检测系统的核心要点。 首先,你需要安装必要的…

Linux 系统收发网络包

国际标准网络模型 国际标准网络模型通常指的是 OSI(Open Systems Interconnection)参考模型,它是一个由国际标准化组织(ISO)定义的网络通信模型,用于指导网络协议的设计和实现。该模型将计算机网络通信划分…

若依后端添加子模块swagger分区

前言: 因为接口太多无法快速的找到对应模块的接口swagger文档,所以在对应需要隔离显示的子模块的swagger接口配置。 1、XXXWebConfiguration类配置 例:system模块 需要在controller包的同级目录下创建 framework.web.config.XXXWebConfigur…

94522

springboot 广州应用科技学院的教室管理系统 摘 要 科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时…

蓝牙ble建立配对、绑定、连接的流程详解

目录 1. 连接(Connection) 广播和扫描 设备发现 连接请求 连接建立 2. 配对(Pairing) 配对请求和响应 配对方法 密钥生成和分发 加密连接 3. 绑定(Bonding) 密钥存储 后续连接 详细流程图 蓝牙低功耗(Bluetooth Low Energy, BLE)设备之间的配对、绑定和连…

机器学习的入门笔记(第十六周)

本周观看了B站up主霹雳吧啦Wz的图像处理的课程, 课程链接:霹雳吧啦Wz的个人空间-霹雳吧啦Wz个人主页-哔哩哔哩视频 下面是本周的所看的课程总结。 MobileNet V2的代码实现 1、定义ConvBNReLU类,将卷积操作,批量归一化操作&…

USB network超全解析,揭秘USB Server背后的黑科技!

一、技术概述 USB Network技术基于USB协议,通过在网络层实现USB设备的虚拟化和共享,使得用户可以在不同的物理位置通过网络访问和操作USB设备。 这种技术打破了传统USB接口的物理限制,极大地扩展了USB设备的使用范围和灵活性。 二、工作原…

DHU 函数 判断质数

思路及代码 #include<iostream> using namespace std;//function: is_prime_number() int is_prime_number(int n){if (n 1){return 0;}for (int i 2; i < n-1; i){if (n%i 0){return 0;}}return 1; } int main(){ //input 多组 Nint N;while(cin >> N){//s…

C#入门篇7(面向对象)

目录 一、值传递和引用传递 1、概念 2、主要区别 3、用法 二、字符串 1、字符串的不可变性可以将字符串看作只读字符数组 2、字符串提供的各种方法 三、继承 1、 概念 2、格式 3、示例 4、子类继承于父类什么&#xff1f; 5、继承的特性 6、查看类图 四、new关键字…

[适合新手的NLP项目]基于机器学习的垃圾信息识别分类

1.项目背景 电子邮件和短信中的垃圾信息是现代通信中常见的问题之一。随着互联网的普及和移动设备的广泛使用&#xff0c;垃圾信息的传播途径和数量也在迅速增加&#xff0c;这些垃圾信息不仅影响用户的日常通信体验&#xff0c;还可能带来严重的安全威胁&#xff0c;如钓鱼攻…

IP地址与SSL证书:保障网络安全的关键

在数字时代&#xff0c;网络安全至关重要&#xff0c;而SSL&#xff08;安全套接层&#xff09;证书作为加密用户与服务器之间数据传输的利器&#xff0c;扮演着不可或缺的角色。然而&#xff0c;谈及SSL证书时&#xff0c;一个常见的误区是它们通常与域名绑定&#xff0c;而非…

逻辑长路短路“或“运算

长路或运算&#xff08;|&#xff09; 1、长路或运算的运算符&#xff1a; 2、长路或运算在两边都是整数时&#xff0c;是逐位或运算&#xff1b;在两边是关系运算时&#xff0c;是逻辑运算。 3、长路或运算会将两边的关系运算结果都计算出来 【示例】5*3>12 | 4<3…

【运维自动化-配置平台】动态分组功能使用场景

蓝鲸智云配置平台&#xff0c;以下简称配置平台 配置平台的动态分组功能是业务纬度下对同类资源实例的聚合&#xff0c;并且能动态的跟随符合条件的资源实例增多或减少&#xff0c;例如负责人是admin的主机聚合。目前动态分组的结果聚合支持两种 主机集群 主机类型的动态分组…

高性价比的创新选择:气膜水族馆—轻空间

在现代城市规划和旅游发展中&#xff0c;水族馆作为独具特色的休闲娱乐场所&#xff0c;深受游客和投资者的青睐。然而&#xff0c;传统水族馆的建设和维护成本高昂&#xff0c;让许多潜在投资者望而却步。气膜水族馆凭借其高性价比和多重优势&#xff0c;成为了水族馆建设领域…

【小白必备】Meta祭出三篇最详尽的LLaMA微调指南

开源&#xff0c;就要开的彻彻底底。 这不&#xff0c;Meta一连放出三篇技术文章&#xff0c;从大模型适配方法出发&#xff0c;介绍了&#xff1a; 如何使用特定领域数据微调LLM&#xff0c;如何确定微调适配自己的用例&#xff0c;以及如何管理良好训练数据集的经验法则。 接…

大学生家教管理系统

一、项目概述 Hi&#xff0c;大家好&#xff0c;今天分享的项目是《大学生家教管理系统》。 随着社会对高质量教育资源的渴求日益增加&#xff0c;家长们越来越倾向于为孩子寻找家教服务。大学生家教因其年轻、有活力、专业基础扎实而备受欢迎。然而&#xff0c;传统的家教市…

【基础算法总结】BFS 解决拓扑排序

BFS 解决拓扑排序 1.拓扑排序简介2.课程表3.课程表 II4.火星词典 点赞&#x1f44d;&#x1f44d;收藏&#x1f31f;&#x1f31f;关注&#x1f496;&#x1f496; 你的支持是对我最大的鼓励&#xff0c;我们一起努力吧!&#x1f603;&#x1f603; 1.拓扑排序简介 拓扑排序解…