抄写YOLOE源码——先抄写ultralytics包,关于__init__.py

什么是__init__.py文件呢,这个文件是一个标志。比如有一个文件夹的名字叫做"ultralytics",里面如果有了__init__.py文件,pip就会认为ultralytics文件夹是一个pip包,这个文件只能叫这个名字,因为pip只识别这个名字,换个名字就不行了。

再看这个文件里面,有一个__version__ = "8.3.39"。这一行表示版本号,版本号的变量名只能叫做__version__,因为pip只识别这个名字,换个名字就不行了。版本号的格式也只能是几点几点几,不能是别的。

然后是设置环境变量:

if not os.environ.get("OMP_NUM_THREADS"):

os.environ"OMP_NUM_THREADS" = "1"

这个环境变量表示的是允许的线程数,从代码中可知,至少也应该有一个线程。

然后就是导包代码:

from ultralytics.models import NAS, RTDETR, SAM, YOLO, FastSAM, YOLOE

from ultralytics.utils import ASSETS, SETTINGS

from ultralytics.utils.checks import check_yolo as checks

from ultralytics.utils.downloads import download

再然后,settings = SETTINGS,这行代码是起别名

最后:

all = (

"version",

"ASSETS",

"YOLO",

"YOLOE",

"NAS",

"SAM",

"FastSAM",

"RTDETR",

"checks",

"download",

"settings",

)

这个表示从ultralytics这个包中都能import什么

相关推荐
星空椰21 小时前
Python 面向对象高级:继承与类定义详解
开发语言·python
白露与泡影1 天前
2026大厂Java面试题大全!牛客网最新版
java·开发语言
凯瑟琳.奥古斯特1 天前
高阶子查询题目精炼
开发语言·数据库·python·职场和发展·数据库开发
风之所往_1 天前
Python 3.4 新特性全面总结
python
雪度娃娃1 天前
转向现代C++——在意为改写的函数添加 override
开发语言·c++
太阳上的雨天1 天前
任何格式的文件转Markdown
python·ai
yaoxin5211231 天前
419. 现代 Java IO 最佳实践 - 写入文本文件
java·windows·python
喵星人工作室1 天前
C++火影忍者1.1.2
开发语言·c++
weixin_468466851 天前
纳米 AI 搜索新手极速上手指南
人工智能·python·深度学习·搜索引擎·ai·语言模型·自然语言处理
凯瑟琳.奥古斯特1 天前
数据库原理选择题精选
数据库·python·职场和发展