当前位置: 首页 > news >正文

pycharm 中package, directory, sources root, resources root的区别

【遇到的问题】

导入yolov5中有utils文件,自己的代码中也有utils文件,使得yolov5中的这部分引用出错了。

【解决方案】

单独建立detection文件夹,把检测相关的都放在这里,yolov5是github上拉取的源码,发现yolov5中from utils import...有下划线,且会认为是edgeserver里的utils。

【方法1】选中yolov5文件夹,右键设定成“marked directory as sources root”, 修改后,detection.py执行没有问题,但是外面调用detection时,就会报错。

【方法2】yolov5中各个子文件夹中, 引用utils文件的地方,全部改成加上前缀EdgeServer.detection.yolov5., 相当于直接改成了绝对路径,虽然繁琐,但是一劳永逸,也无需设置成source root.

【知识补充】

1、package, 显示为文件夹上带一个点

每个里面都有一个__init__.py, 虽然内容为空。通过添加它,Python 会将目录视为包含包,使这部分模块对其他目录可见,因此能够通过from 。。。import。。。被导入。

2、directory, 显示为普通文件夹

Dictionary在pycharm中是一个文件夹,放置资源文件等,该文件夹其中并不包含_ _ init.py_ _文件

3、sources root,显示为蓝色文件夹

指定一个文件夹,你告诉IntelliJ IDEA,这个文件夹及其子文件夹中包含的源代码,可以编译为构建过程的一部分。PyCharm使用Source roots作为解析导入(import)的起点,也就是说,当你在代码中写相对路径的时候,就是以source root为起点进行查询

4、resources root,显示为橘色下标的文件夹

用于应用程序中的资源文件(图像、各种配置XML和属性文件等)。在构建过程中,资源文件夹的所有内容都复制到输出文件夹中。

5、Excluded roots (shown as ) are ones that PyCharm “almost ignores”.

http://www.lryc.cn/news/172409.html

相关文章:

  • 【谢希尔 计算机网络】第2章 物理层
  • Eclipse工具使用技巧
  • python LeetCode 刷题记录 94
  • 滴滴可观测平台 Metrics 指标实时计算如何实现了又准又省?
  • 每天几道Java面试题:IO流(第五天)
  • js/axios/umi-request 根据后端返回的二进制流下载文件
  • 软件评测师之流水线
  • Linux系统编程——网络编程的学习
  • Vue中的ref 和$refs的使用
  • Hive【非交互式使用、三种参数配置方式】
  • 基于Yolov8的工业小目标缺陷检测(1)
  • Python文件操作和管理指南:打开、读取、写入和管理文件
  • WebGL 用鼠标控制物体旋转
  • Spring Boot魔法:简化Java应用的开发与部署
  • 参议院算法Java
  • 前端提交规范 ESLint + Prettier + husky + lint-staged
  • python实现命令tree的效果
  • Deformable DETR(2020 ICLR)
  • springboot01
  • 虚拟机中window/ubuntu系统如何联网?
  • 计算物理专题----随机游走实战
  • 《思维与智慧》简介及投稿邮箱
  • flask+python快速搭建
  • 基于微信小程序的美术馆预约平台设计与实现(源码+lw+部署文档+讲解等)
  • ruoyi-vue-pro yudao 项目商城 mall 模块启用及相关SQL脚本
  • default 和 delete 与默认构造函数 的使用
  • 【开发篇】一、热部署
  • 点云从入门到精通技术详解100篇-定子装配过程中基于深度学习的易变形材料的点云分割(下)
  • 谷歌浏览器关闭自动更新功能
  • 电商业务--技术负责人 250K*15