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

Python----PyQt开发(PyQt基础,环境搭建,Pycharm中PyQttools工具配置,第一个PyQt程序)

一、QT与PyQT的概念和特点

1.1、QT

        QT是一个1991年由The Qt Company开发的跨平台C++图形用户界面应用程序开发 框架,可构建高性能的桌面、移动及Web应用程序。也可用于开发非GUI程序,比如 控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象 编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正 的组件编程。2008年Qt Company科技被诺基亚公司收购,随后4年里,因各种原因 最终导致于2012年,被Digia公司收购。

         平台支持:QT支持多个操作系统,包括Windows、macOS、Linux、Android和 iOS等,使开发人员能够轻松地开发一次代码,然后在不同平台上部署和运行应 用程序。

        GUI开发:QT提供了一套强大的GUI库,可以快速创建现代化的用户界面。它包 括丰富的UI控件、布局管理器、绘图和图像处理工具,使开发人员能够创建各种 各样的用户界面。

        信号与槽机制:QT引入了一种名为"信号与槽"的机制,用于处理对象之间的通信 和事件处理。这种机制使开发人员能够轻松地实现应用程序的事件响应和数据传 递。

        数据库访问:QT提供了对多种数据库的支持,包括MySQL、SQLite、Oracle和 Microsoft SQL Server等。它提供了一套完整的API,使开发人员能够方便地连 接、查询和操作数据库。

        网络编程:QT提供了网络编程的支持,包括TCP/IP和UDP通信、HTTP请求和响 应、FTP传输等。它使开发人员能够构建具有网络功能的应用程序,如客户端-服 务器应用程序和网络通信工具。

        多媒体功能:QT具有丰富的多媒体功能,包括音频和视频播放、图像处理和操 作、摄像头和音频设备访问等。它提供了一套简单易用的API,使开发人员能够 轻松地集成多媒体功能到应用程序中。

        总之,QT是一个功能强大的C++应用程序开发框架,具有跨平台支持、GUI开 发、信号与槽机制、数据库访问、网络编程和多媒体功能等特点。它被广泛应用 于各种领域的应用程序开发,包括桌面软件、移动应用、嵌入式系统和图形化界 面工具等。

1.2、PyQT 

        PyQt 是一个用于创建桌面应用程序的 Python 框架,它是基于 Qt 库的 Python 绑 定。用于开发图形用户界面、网络应用、数据库驱动和其他各种应用程序。PyQt 提 供了对 Qt 库的 Python 封装,使得开发者可以使用 Python 编程语言来利用 Qt 的强 大功能。

1.2.1、pyqt5

        PyQt5 是 Riverbank Computing 开发的 GUI 小部件工具包的最新版本。它是 Qt 的 Python 接口,是最强大和流行的跨平台 GUI 库之一。

        PyQt5 是 Python 编程语言和 Qt 库的混合体。 所以说PyQt5就是Python的图 形界面开发库。 程序的用户交互界面,称为UI(User interface)。通过使用PyQt5库,我们可 以快速制作自己的小工具。

pyqt5优势: 

1.文档齐全:PyQt是对Qt库的一个绑定,且保持了Qt库原有的API,因此PyQt除了可 以使用自己的文档,也几乎可以通用Qt的文档。

2.稳定性高:PyQt使用C++开发,底层使用Qt库,因此比纯Python的GUI库更加稳定 可靠。PyQt支持跨平台开发,而且保持着和Qt库的同步更新,因此在不同的操作系统和 Python版本下都有良好的兼容性。

3.生态支持:PyQt拥有一个活跃的社区和丰富的第三方库支持,可以方便地实现各种功 能,如数据库操作、图形绘制、图像处理等。另外,PyQt作者也开发了一些扩展包,如 PyQtChart、PyQtDataVisualization等,使得绘制图表和数据可视化变得更加容易。

4.开源免费:PyQt5采用双开源协议,第一种采用GPL(GNU General Public License)协议,开发人员可以免费使用PyQt5(但你的应用也必须遵循GPL协议即源代码 公开),第二种商业许可证,如果你不想公开你的源码,或者不希望遵守GPL协议,那么你 可以购买PyQt5的商业许可证,即可不公开程序源码。这使得PyQt在开源界和商业界都有 广泛的应用和支持。 

应用: 

1.游戏开发,虽然 PyQT5 主要用于创建用户界面,但它也可以用于游戏开发,尤其是 那些注重故事叙述和角色交互的图形冒险游戏。

2.自动化和控制系统,PyQT5 可以用于创建监控和控制系统,它提供了对信号和槽机制 的支持,这有助于实现复杂的事件处理逻辑。

3.桌面应用程序,它提供了丰富的控件和组件,以及强大的布局管理器,使得开发者可 以轻松地创建具有复杂界面的应用程序。

4.嵌入式开发,PyQT5 可以用于创建定制的硬件设备上的应用程序。 

1.2.2、 pyqt6

        PyQt6 是一个功能强大的 Python 库,用于创建跨平台的图形用户界面应用程序。它是 Qt 应用程序框架的 Python 绑定,Qt 是一个广泛使用的 C++ 库。

  • PyQt6: 绑定到 Qt 6.x 系列。Qt 6 是对 Qt 5 的重大更新,包含许多功能增强和重构。

  • 在 PyQt6 中,许多类和方法的名称和参数进行了更改,有些过时或不再支持。

  • PyQt6 进行了模块化改进,有些模块被拆分或重命名。例如,QtWidgetsQtGui 和 QtCore 模块在 PyQt6 中的使用方式有所调整,某些类可能需要从不同的模块导入。

  • PyQt6 使用 Python 的原生类型,而 PyQt5 除了提供信号与槽的传统方式外,还允许使用老式的字符串形式来定义信号和槽。

  • PyQt6 在类型提示方面更为严格,鼓励类型注释。这有助于开发人员在使用 IDE 时获得更好的补全和错误提示。

  • Qt 6 在渲染和性能方面做了一些改进,支持更现代的图形技术(如 Vulkan),使得图形和动画的展示更加流畅。

  • Qt 6 引入了许多新的功能,例如对 3D 图形的增强支持、改进的多媒体处理、对高 DPI 显示器的更好支持等,这些特性在 PyQt6 中也得到了体现。

        由于 API 的更改,PyQt5 和 PyQt6 之间的代码不一定可以互换。如果你正在开发新项目,建议使用 PyQt6,因为它将提供最新的功能和更好的支持。

二、PySide与PyQt的区别

2.1、 什么是Pyside

        PySide,最初是由是由Nokia公司开发,现在由 Qt 公司维护,它是 Qt 框架的另一 个 Python 绑定。PySide2 是针对 Qt 5 的版本,而 PySide6 是针对最新 Qt 6 版本的 Python 绑定。PySide是跨平台的图形使用界面框架Qt的Python版本。提供和PyQt 类似的功能,并兼容API。但与PyQt不同处为使用LGPL许可。他是一个专门用于创建 GUI的库,可以在Python中使用,也可以在不同的操作系统上使用 (linux&windows)。此外大多数的DCC软件都使用它,比如Maya、houdini和 Blender等。Pyside基于QT的C++框架。

2.2、Pyside与PyQt的区别

2.2.1、许可协议

        PyQt5 提供了两种许可选项:GPL 和商业许可。使用 GPL 许可证时,你的应用 程序必须开源;如果选择商业许可,则需要付费。

        PySide采用LGPL(GNU Lesser General Public License)开源协议,LGPL是一 个较为宽松的开源协议,与 GPL 相比,它允许商业软件在不公开源代码的情况下 使用 LGPL 许可的库。这意味着你可以使用 PySide 来开发商业应用程序,而不 必开源你的整个应用程序,只需确保对 PySide 本身所做的任何修改是开源的。

2.2.2、开发和维护

PySide 由 The Qt Company 维护,它是 Qt 框架的官方 Python 绑定。

PyQt5 由 Riverbank Computing 维护,它是一个第三方解决方案。

2.2.3、API 兼容性

        PySide 和 PyQt5的 API 非常相似,但并不完全相同。在某些情况下,类名、方法 名或参数可能会有所不同。因此,从一个库迁移到另一个库可能需要一些代码修 改。

2.2.4、性能

        在性能方面,PySide 和 PyQt5 通常非常相似,因为它们都依赖于相同的 Qt 库。 但是,具体性能可能会因实现细节和优化而有所不同。

三、PyQT的安装

pip install PyQt5==5.15.2  -i https://pypi.tuna.tsinghua.edu.cn/simple 

四、PyQT工具的导入配置

4.1、 PyQT工具

        PyQt Tools 是 PyQt 框架提供的一组工具,主要用于辅助 PyQt 应用程序的开发和设计 

pip install PyQt5-tools==5.15.9.3.3  -i https://pypi.tuna.tsinghua.edu.cn/simple 

PyQt Tools 中常见的工具: 

 1. Qt Designer: 这是一个可视化的用户界面设计器,允许开发者通过拖放方式设 计和布局应用程序的界面。设计好的界面可以保存为.ui 文件,然后可以使用 pyuic 工具将其转换为相应的 Python 代码,以便在 PyQt 应用程序中使用。

2. PyUIC: 这是一个用于将 Qt Designer 设计的 .ui 文件转换为对应的 Python 代 码的命令行工具。通过这个工具,可以将可视化设计的用户界面集成到 PyQt 项 目中。

3. PyRCC: 用于将 Qt 资源文件 (.qrc) 编译成 Python 模块的工具。Qt 资源文件可 以包含图像、文本文件等,通过编译可以将这些资源文件嵌入到 PyQt 应用程序 中,方便统一管理。

4. Pylupdate: 用于更新 Qt 项目的翻译文件 (.ts)。这在多语言支持的应用程序中 很有用,可以提供不同语言的界面翻译。

4.2、PyQT工具在Pycharm中配置 

在 PyCharm 中导入 PyQt 工具通常是通过设置外部工具(External Tools)来完成 的。 

1. 打开 PyCharm: 打开你的 PyCharm IDE。

2. 进入设置(Settings): 在顶部菜单栏中,选择 "File" -> "Settings"(在 macOS 上是 "PyCharm" -> "Preferences")。

3. 选择 External Tools: 在设置窗口左侧的导航栏中,展开 "Tools" 节点,并选择 "External Tools"。

4. 添加外部工具: 在右侧窗格中,点击 "+"(添加)按钮,然后选择 "Program"。

5. 填写外部工具信息: 在弹出的对话框中,填写以下信息:

        Name(名称): 工具的名称,例如 "pyuic" 或 "Qt Designer"。

        Group(组): 可选,可以将工具分组,这样可以更好地组织工具列表。

        Description(描述): 工具的描述,用于说明工具的作用。

        Program(程序): 工具的可执行文件路径。例如,对于 pyuic,你需要指定 它的完整路径,通常是在虚拟环境中的 Scripts(Windows)或 bin (Linux/Mac)目录中。

        Arguments(参数): 传递给工具的参数。对于 pyuic,这可能是一些选项和 输入文件的路径。

        Working Directory(工作目录): 工具运行时的工作目录,通常可以设置为 你的项目根目录。 

Qt Designer,图形化布局工具: 

D:\Anaconda3\envs\over_project\Lib\site-packages\qt5_applications\Qt\bin\designer.exe

                                                                                (程序路径:填写自己的该程序的位置

$FileDir$ (当前文件夹)

$ProjectFileDir$ (绝对路径)

 

PyUIC,图形界面转py: 

D:\Anaconda3\envs\over_project\Scripts\pyuic5.exe

                                                                                (程序路径:填写自己的该程序的位置

$FileName$ -o $FileNameWithoutExtension$.py (当前文件转为.py文件)

$FileDir$ 

 

Pyrcc ,资源转py: 

D:\Anaconda3\envs\over_project\Scripts\pyrcc5.exe

                                                                                (程序路径:填写自己的该程序的位置

$FileName$ -o $FileNameWithoutExtension$_rc.py (当前文件转为.py文 件) 

$FileDir$ 

 

五、第一个pyqt程序界面

import sys
from PyQt5.QtWidgets import QApplication,QWidgetif __name__ == '__main__':app = QApplication(sys.argv)  # 创建QApplication对象,接受命令行参数windows = QWidget()  # 创建一个QWidget窗口对象windows.setWindowTitle('第一个PyQt程序')  # 设置窗口标题为'第一个PyQt程序'windows.show()  # 显示窗口app.exec()  # 启动应用程序事件循环  

六、思维导图

相关文章:

Python----PyQt开发(PyQt基础,环境搭建,Pycharm中PyQttools工具配置,第一个PyQt程序)

一、QT与PyQT的概念和特点 1.1、QT QT是一个1991年由The Qt Company开发的跨平台C图形用户界面应用程序开发 框架,可构建高性能的桌面、移动及Web应用程序。也可用于开发非GUI程序,比如 控制台工具和服务器。Qt是面向对象的框架,使用特殊的代…...

C语言——排序(冒泡,选择,插入)

基本概念 排序是对数据进行处理的常见操作,即将数据按某字段规律排列。字段是数据节点的一个属性,比如学生信息中的学号、分数等,可针对这些字段进行排序。同时,排序算法有稳定性之分,若两个待排序字段一致的数据在排序…...

物联网智能语音控制灯光系统设计与实现

背景 随着物联网技术的蓬勃发展,智能家居逐渐成为现代生活的一部分。在众多智能家居应用中,智能灯光控制系统尤为重要。通过语音控制和自动调节灯光,用户可以更便捷地操作家中的照明设备,提高生活的舒适度与便利性。本文将介绍一…...

哪吒闹海!SCI算法+分解组合+四模型原创对比首发!SGMD-FATA-Transformer-LSTM多变量时序预测

哪吒闹海!SCI算法分解组合四模型原创对比首发!SGMD-FATA-Transformer-LSTM多变量时序预测 目录 哪吒闹海!SCI算法分解组合四模型原创对比首发!SGMD-FATA-Transformer-LSTM多变量时序预测效果一览基本介绍程序设计参考资料 效果一览…...

Python实现决策树(Decision Tree)算法

在 Python 中实现一个决策树算法,可以使用 sklearn 库中的 DecisionTreeClassifier 类。这个类实现了分类任务中的决策树算法。下面是一个简单的例子,展示如何使用 DecisionTreeClassifier 来训练决策树并进行预测。 1. 安装 scikit-learn 如果你还没有…...

刷题日记---二叉树递归专题

文章目录 1. 从根到叶的二进制数之和2. 二叉树的坡度3. 总结 1. 从根到叶的二进制数之和 描述: 给出一棵二叉树,其上每个结点的值都是 0 或 1 。每一条从根到叶的路径都代表一个从最高有效位开始的二进制数。 例如,如果路径为 0 -> 1 ->…...

【C++】智能指针的使用及其原理

1. 智能指针的使用场景分析 下⾯程序中我们可以看到,new了以后,我们也delete了,但是因为抛异常导,后⾯的delete没有得到 执⾏,所以就内存泄漏了,所以我们需要new以后捕获异常,捕获到异常后dele…...

Jenkins 安装插件 二

Jenkins 安装插件 二 一. 打开 Dashboard 打开 Jenkins 界面,不管在任何界面,只需要点击左上角 Dashboard 按钮即可 二. 打开 Manage Jenkins 找到 Manage Jenkins -> System Configuration -> Plugins 点击 Plugins 打开界面如下 Updates&a…...

C++自研游戏引擎-碰撞检测组件-八叉树AABB检测算法实现

八叉树碰撞检测是一种在三维空间中高效处理物体碰撞检测的算法,其原理可以类比为一个管理三维空间物体的智能系统。这个示例包含两个部分:八叉树部分用于宏观检测,AABB用于微观检测。AABB可以更换为均值或节点检测来提高检测精度。 八叉树的…...

Java 大视界 -- 云计算时代 Java 大数据的云原生架构与应用实践(86)

💖亲爱的朋友们,热烈欢迎来到 青云交的博客!能与诸位在此相逢,我倍感荣幸。在这飞速更迭的时代,我们都渴望一方心灵净土,而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识,也…...

学习threejs,使用HemisphereLight半球光

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️THREE.HemisphereLight 二、…...

XML 命名空间

XML 命名空间 引言 XML(可扩展标记语言)是一种用于存储和传输数据的标记语言。在XML中,命名空间(Namespace)是一个非常重要的概念,它主要用于解决XML文档中元素和属性的命名冲突问题。本文将详细介绍XML命…...

kubernetes-cni 框架源码分析

深入探索 Kubernetes 网络模型和网络通信 Kubernetes 定义了一种简单、一致的网络模型,基于扁平网络结构的设计,无需将主机端口与网络端口进行映射便可以进行高效地通讯,也无需其他组件进行转发。该模型也使应用程序很容易从虚拟机或者主机物…...

【嵌入式Linux应用开发基础】ioctl函数

目录 一、概述 1.1. ioctl 的功能 1.2. 函数原型 1.3. 参数说明 1.4. 返回值 1.5. request 命令的定义 二、典型应用场景 2.1. 串口通信控制 2.2. 网络设备配置与管理 2.3. 字符设备控制 2.4. 块设备管理 2.5. 多媒体设备控制 三、关键注意事项 3.1. request 命令…...

开源的轻量级分布式文件系统FastDFS

FastDFS 是一个开源的轻量级分布式文件系统,专为高性能的分布式文件存储设计,主要用于解决海量文件的存储、同步和访问问题。它特别适合以中小文件(如图片、视频等)为载体的在线服务,例如相册网站、视频网站等。 FastD…...

从VGG到Transformer:深度神经网络层级演进对模型性能的深度解析与技术实践指南

一、技术原理(数学公式示意图) 1. 层深与模型容量关系 数学表达:根据Universal Approximation Theorem,深度网络可表达复杂函数: f ( x ) f L ( f L − 1 ( ⋯ f 1 ( x ) ) ) f(x) f_L(f_{L-1}(\cdots f_1(x))) f…...

深入了解 Oracle 正则表达式

目录 深入了解 Oracle 正则表达式一、正则表达式基础概念二、Oracle 正则表达式语法(一)字符类(二)重复限定符(三)边界匹配符(四)分组和捕获 三、Oracle 正则表达式函数(…...

机器学习-监督学习

1. 定义与原理 监督学习依赖于标记数据(即每个输入样本都对应已知的输出标签),模型通过分析这些数据中的规律,建立从输入特征到目标标签的映射函数。例如,在垃圾邮件检测中,输入是邮件内容,输出…...

Leetcode:学习记录

一、滑动窗口 1. 找出数组中元素和大于给定值的子数组的最小长度 右指针从左到右遍历,在每个右指针下,如果去掉左边元素的元素和大于等于给定值则左指针右移一次,直到小于给定值,右指针右移一个。 2.找到乘积小于给定值的子数组…...

探索顶级汽车软件解决方案:驱动行业变革的关键力量

在本文中,将一同探索当今塑造汽车行业的最具影响力的软件解决方案。从设计到制造,软件正彻底改变车辆的制造与维护方式。让我们深入了解这个充满活力领域中的关键技术。 设计软件:创新车型的孕育摇篮 车辆设计软件对于创造创新型汽车模型至…...

AI前端开发:解放创造力,而非取代它

近年来,人工智能技术飞速发展,深刻地改变着各行各业,前端开发领域也不例外。越来越多的AI写代码工具涌现,为开发者带来了前所未有的效率提升。很多人担心AI会取代程序员的创造力,但事实并非如此。本文将探讨AI辅助前端…...

探讨使用ISVA代替“Open Liberty使用指南及微服务开发示例”中日志审计功能

在Open Liberty使用指南及开发示例(四)一文开始日志审计功能占有了一定的开发工作量,那么是否可以使用IBM Security Verify Access(ISVA)代替以节省开发工作?如果可行,那么以后各类应用的日志审…...

log4j2日志配置文件

log4j2配置文件每个项目都会用到,记录一个比较好用的配置文件,方便以后使用时调取,日志输出级别为debug,也可以修改 <?xml version"1.0" encoding"UTF-8"?> <Configuration monitorInterval"180" packages""><prope…...

python专栏导读

由于本人非python工程师&#xff0c;是在自学python&#xff0c;所以本专栏的内容会显得很基础&#xff0c;甚至有些内容在python工程师看来实在太过于简单&#xff0c;在此清楚嘲笑&#xff0c;因为毕竟每个人都是从不懂、从基础开始的。 本篇作为导读和目录形式存在&#xf…...

Ollama与Vllm使用对比与优劣

Ollama和vLLM是两个用于优化大型语言模型&#xff08;LLM&#xff09;推理的框架&#xff0c;它们在性能、资源利用率、部署复杂性等方面各有优劣。以下是对这两个框架的详细介绍&#xff1a; 1. Ollama Ollama是一个轻量级且易于使用的框架&#xff0c;旨在简化大型语言模型…...

K8s之存储卷

一、容忍、crodon和drain 1.容忍 即使节点上有污点&#xff0c;依然可以部署pod。 字段&#xff1a;tolerations 实例 当node01上有标签test11&#xff0c;污点类型为NoSchedule&#xff0c;而node02没有标签和污点&#xff0c;此时pod可以在node01 node02上都部署&#xff0c…...

luoguP8764 [蓝桥杯 2021 国 BC] 二进制问题

luogu题目传送门 题目描述 小蓝最近在学习二进制。他想知道 1 到 N 中有多少个数满足其二进制表示中恰好有 K 个 1。你能帮助他吗? 输入格式 输入一行包含两个整数 N 和 K。 输出格式 输出一个整数表示答案。 输入输出样例 输入 #1 7 2 输出 #1 3 说明/提示 对于…...

本地部署DeepSeek后的调用与删除全攻略

在本地成功部署DeepSeek模型后&#xff0c;如何高效调用它发挥其强大功能&#xff0c;以及在不需要时妥善删除&#xff0c;是很多用户关注的重点。我也在后台接到了很多粉丝的留言&#xff0c;询问 DeepSeek 本地部署之后的一些调用和删除的问题&#xff0c;于是我在网上找了现…...

Qt Designer菜鸟使用教程(实现一个本地英文翻译软件)

1 安装Qt Designer 安装这个包的时候会自带安装 Qt Designer, 安装目录为python的安装根目录的 Lib/site-packages/qt5_applications/Qt/bin 目录下。 pip install pyqt5-tools2 新建窗体 2.1 新建主窗体 创建之后如下图&#xff1a; 设置主窗口大小&#xff1a; 设置窗…...

C++ 洗牌函数std::shuffle的用法

目录 1.简介 2.工作原理 3.std::shuffle 与 std::random_shuffle 的区别 4.rand 和 srand 5.std::shuffle 的使用方法 6.随机数生成器和分布器 7.注意事项 1.简介 std::shuffle 是 C 标准库中用于对序列进行随机重排&#xff08;洗牌&#xff09;的一种算法。它可以将容…...

MySQL InnoDB引擎 MVCC

MVCC&#xff08;Multi-Version Concurrency Control&#xff09;即多版本并发控制&#xff0c;是 MySQL 的 InnoDB 存储引擎实现并发控制的一种重要技术。它在很多情况下避免了加锁操作&#xff0c;从而提高了数据库的并发性能。 一、原理 MVCC 的核心思想是通过保存数据在某…...

【Elasticsearch】simple_query_string

Elasticsearch 的simple_query_string查询是一种灵活且容错性较强的查询方式&#xff0c;它允许用户通过简单的语法构造查询字符串&#xff0c;以实现对文档的搜索。以下是关于simple_query_string查询的详细说明&#xff1a; 1.基本概念 simple_query_string查询是一种基于字…...

数据结构 04

4. 栈 4.2. 链式栈 4.2.1. 特性 逻辑结构&#xff1a;线性结构 存储结构&#xff1a;链式存储结构 操作&#xff1a;创建&#xff0c;入栈&#xff0c;出栈&#xff0c;清空&#xff0c;获取 4.2.2. 代码实现 头文件 LinkStack.h #ifndef __LINKSTACK_H__ #define __LINKST…...

Java并发中的上下文切换、死锁、资源限制

在Java并发编程中&#xff0c;上下文切换、死锁和资源限制是开发者经常需要面对的问题。这些问题不仅会影响程序的性能&#xff0c;还可能导致程序无法正常运行。本文将深入探讨这些问题的原理、影响以及如何在实际开发中避免或解决它们。 目录 1. 上下文切换&#xff08;Con…...

DeepSeek教unity------MessagePack-01

MessagePack是C# 的极速 MessagePack 序列化器。它比 MsgPack-Cli 快 10 倍&#xff0c;并且性能超过其他 C# 序列化器。MessagePack for C# 还内置支持 LZ4 压缩——一种极其快速的压缩算法。性能在诸如游戏、分布式计算、微服务或数据缓存等应用中尤为重要。 这个库通过 NuGe…...

【大语言模型】最新ChatGPT、DeepSeek等大语言模型助力高效办公、论文与项目撰写、数据分析、机器学习与深度学习建模等科研应用

ChatGPT、DeepSeek等大语言模型助力科研应用 随着人工智能技术的快速发展&#xff0c;大语言模型如ChatGPT和DeepSeek在科研领域的应用正在为科研人员提供强大的支持。这些模型通过深度学习和大规模语料库训练&#xff0c;能够帮助科研人员高效地筛选文献、生成论文内容、进行数…...

泰勒公式推导以及常用展开式与近似计算

泰勒公式的基本思想是通过函数在某点的导数来逐渐构建一个多项式&#xff0c;该多项式能够近似函数在该点附近的值。我们通过一次次引入导数来改进近似&#xff0c;从而得到一个无限级数的展开。 准备工作&#xff1a;函数的定义和导数 假设我们有一个函数 f ( x ) f(x) f(x)…...

深入解析A2DP v1.4协议:蓝牙高质量音频传输的技术与实现

1. A2DP概述 A2DP&#xff08;Advanced Audio Distribution Profile&#xff09;是一种高质量音频流媒体协议&#xff0c;旨在实现高质量音频内容的分发&#xff0c;通常用于通过蓝牙设备传输音频数据&#xff0c;例如将音乐从便携式播放器传输到耳机或扬声器。与传统的蓝牙语…...

STM32引脚VBAT和RTC的关系

一、RTC简介 1、RTC (Real Time Clock)&#xff1a;实时时钟。RTC是个独立的定时器。RTC模块拥有一个连续计数的计数器&#xff0c;在相应的软件配置下&#xff0c;可以提供时钟日历的功能。修改计数器的值可以重新设置当前时间和日期。RTC还包含用于管理低功耗模式的自动唤醒单…...

untiy 3d 混合动画

1.创建动画控制器 挂在到人物模型上 效果 20250213_170924...

django配置跨域

1、第一种 from django.views.decorators.csrf import csrf_exemptcsrf_exempt第二种 安装 pip install django-cors-headers在配置文件settings.py进入 INSTALLED_APPS [..."corsheaders", # 添加 ]MIDDLEWARE [corsheaders.middleware.CorsMiddleware, # 添加…...

【设计模式】【行为型模式】迭代器模式(Iterator)

&#x1f44b;hi&#xff0c;我不是一名外包公司的员工&#xff0c;也不会偷吃茶水间的零食&#xff0c;我的梦想是能写高端CRUD &#x1f525; 2025本人正在沉淀中… 博客更新速度 &#x1f44d; 欢迎点赞、收藏、关注&#xff0c;跟上我的更新节奏 &#x1f3b5; 当你的天空突…...

前端面试题目---页面抖动的原因、如何避免、如何解决

前端页面抖动是一个常见且影响用户体验的问题&#xff0c;下面将从抖动发生的场景、解决办法以及预防措施三个方面进行详细阐述。 页面抖动发生的场景 1. 元素尺寸动态变化 图片加载&#xff1a;当页面中图片的宽高没有预先设定&#xff0c;在图片加载完成后&#xff0c;其实…...

DeepSeek 突然来袭,AI 大模型变革的危机与转机藏在哪?

随着人工智能技术的飞速发展&#xff0c;大模型领域不断涌现出具有创新性的成果。DeepSeek 的横空出世&#xff0c;为 AI 大模型领域带来了新的变革浪潮。本文将深入探讨 DeepSeek 出现后 AI 大模型面临的危机与转机。 冲冲冲&#xff01;&#xff01;&#xff01; 目录 一、…...

将Sqlite3数据库挂在内存上处理

创作灵感&#xff1a;最近把小学生的口算题从2位数改到3位数&#xff0c;100以内四则运算练习&#xff08;千纬数学&#xff09;再次更新&#xff0c;选取难题-CSDN博客要不断刷题目&#xff0c;以前100以内的加减乘除也是这样刷出来的&#xff0c;代码如下&#xff1a; impor…...

#用于跟踪和反映数据源对象的变化--useMagical

import { cloneDeep } from lodash-es import { reactive, ref, watchEffect } from vue /*** 神奇函数* param source 数据源,* param initKey 固定需要返回的属性* description 收集数据源中修改的属性,并返回* version 1.0 仅支持对象* author sufei* return { source, resu…...

基于微信小程序的场地预约设计与实现

第3章 系统设计 3.1系统设计目标 本系统的实现可以帮助体育馆场地信息的管理。帮助管理员对注册用户管理以及用户预约管理。同时可以帮助用户进行场地预约。本系统可以实现用户足不出户预约到需要的场地&#xff0c;为用户提供场地信息了解的平台。 3.2系统功能结构图 本系统的…...

1446. 连续字符 简单

1446. 连续字符https://leetcode.cn/problems/consecutive-characters/ 给你一个字符串 s &#xff0c;字符串的「能量」定义为&#xff1a;只包含一种字符的最长非空子字符串的长度。 请你返回字符串 s 的 能量。 示例 1&#xff1a; 输入&#xff1a;s "leetcode"…...

多张图片合成PDF

昨天接了一个家教&#xff0c;在网上搜集了一些图片格式的素材&#xff0c;但想要发给学生家长打印&#xff0c;都是图片格式可能不太方便&#xff0c;就想着合成pdf文件之后再发给家长。 试用了“samll*”一次&#xff0c;就需要充值vip了&#xff0c;所以就用python自己写了…...

【办公】钉钉修改默认存储位置,释放C盘空间

Step1: 右击钉钉图标选择设置 Step2: 通用里面找到文件保存位置&#xff0c;修改文件目录: 最新版本钉钉界面&#xff1a; 设置完成后按提示重启即可&#xff01;...