- 博客(11)
- 收藏
- 关注
原创 Git核心概念与应用
Git作为使用C语言开发的分布式版本控制系统,解决了传统文件协作中的版本混乱问题。2.高效协作机制:通过推送(Push)/拉取(Pull)直接同步修改,支持多人协同编辑,任意两台设备可交换变更(无需中央服务器中转)4.去中心化架构:每个开发者本地存储完整版本库历史,支持离线操作(提交、分支等无需联网)1.自动版本追踪:记录每次文件修改,无需手动管理多个备份文件。3.完整历史回溯:快速查看任意次数的修改记录,提升开发效率。本地操作:检出获取最新版本,提交同步回中央服务器。HEAD^:上一个版本。
2025-10-22 16:27:31
320
原创 基于deque的共享队列实践
在日常开发中,经常需要处理动态数据集的存储和访问问题。下面以一个基于Python标准库collections.deque实现的动态数组存储方案,它具有高效、线程安全(在GIL保护下)和易用的特点。deque支持从两端快速添加和删除元素(O(1)时间复杂度)。通过设置maxlen参数,可以自动限制队列大小,当队列满时添加新元素会自动移除最旧的元素。
2025-08-27 17:30:43
305
原创 PyQt5与SQLite数据库管理系统开发实践
本文介绍一个基于PyQt5框架开发的SQLite数据库可视化管理系统,主要用于管理记录数据。该系统采用MVC架构,实现了完整的CRUD功能(创建、读取、更新、删除),并支持数据导出和多表管理。
2025-08-27 09:05:54
549
原创 高性能实时数据采集系统:通用模板
初始化模块 - 系统配置和资源准备采集控制模块 - 启动/停止采集过程数据处理流水线 - 数据接收、处理、缓冲和输出辅助功能模块 - 错误处理、流量控制等。
2025-08-22 18:11:23
1007
原创 Matplotlib中的Figure与Axes
Figure是顶层容器,相当于一张白纸或画框,负责管理整个图像的尺寸、背景等全局属性;而Axes则是画布上的具体绘图区域,每个Axes都包含独立的坐标系(x/y/z轴)、数据点和图表元素(如标题、图例)。Matplotlib作为Python最流行的绘图库,其核心在于理解。Matplotlib提供了两种创建图形的方式,区别在于。
2025-08-22 17:27:40
327
原创 通过wifi进行数据通信
在TCP/IP协议栈中将通信分为应用层、传输层、网络层和链路层,WiFi仅负责链路层的物理信号传输(如无线电波发送与接收),而TCP作为传输层协议,独立于底层网络技术,专注于确保端到端的数据可靠性。注:TCP会将数据拆分为多个数据包(分片)传输,每个分片大小受MTU(最大传输单元,通常为1500字节)限制,即使调用recv(字节数),实际接收的可能是多个分片中的一部分,需多次调用才能完整接收。一台设备作为热点,其他设备连接其建立的临时网络,适用于无路由器的封闭环境(如配置智能设备)
2025-08-21 09:53:35
703
原创 Pyqt5+SQLite+ORM
这里我们选用SQLite,它是一种嵌入式数据库,以单个独立的文件形式存储数据,适用于Pyqt5的开发。通过上面的案例可以发现,如果每个业务逻辑都要编写一次SQL语句,会出现很多重复代码,影响开发效率。首先需要搭建一个父类(Model),在父类中实现对数据库的增删改查操作。它允许开发人员以面向对象的方式操作数据库,而无需直接编写SQL语句。通常在做业务逻辑时会遇到,如何在界面上对数据库信息进行操作的问题。为避免重复编写SQL语句,提高开发效率,引入ORM这个概念。下面做一个小案例,将数据库信息显示在界面中。
2024-10-16 16:32:37
1234
原创 sqlite3.OperationalError: database is locked python-BaseException错误解决
出现sqlite3.OperationalError: database is locked python-BaseException错误,是由于SQLite只支持单线程,默认使用写入优化的锁定,即在一个写操作进行时,其他进程会被阻塞,直到写操作完成。在出现这个问题时,检查一下是否使用DB Browser同时打开了SQLite。将其关闭,即可解决该问题。
2024-10-08 16:07:54
592
原创 Pyqt5+SQLite
这里我们选用SQLite,它是一种嵌入式数据库,以单个独立的文件形式存储数据,适用于Pyqt5的开发。通常在做业务逻辑时会遇到,如何在界面上对数据库信息进行操作的问题。在Qt Designer中选择Table View控件。下面做一个小案例,将数据库信息显示在界面中。将数据设置给QTableView。3.将数据库信息显示在界面上。
2024-10-08 14:26:59
1023
原创 PyQt5编程经验总结
note:在有关进度条显示,发送信号时,不能过于频繁,尽可能减少信号发送次数,不然会产生资源占用。主要步骤:(1)创建线程[对象] (2)自定义信号[传参] (3)重写run()[写功能] (4)将线程信号连接到槽函数 (5)编写槽函数[主线程] (6)启动线程start()在界面画笔显示的基础上,同样对实际图片进行绘制,保存的结果为实际绘制,而界面上仅显示。采用Qt Designer设计UI界面,将设计好的界面保存为xx.ui文件,通过PyUIC转为.py文件,编写main()调用。
2024-09-18 16:11:00
1081
原创 通过MicroPython实现对板子的控制
以stm32f4系列的板子为例,主要修改三个文件,mpconfigboard.h,pins.csv,stm32f4xx_hal_conf.h。MicroPython,可以提供一个Python操作系统,控制各种电子项目,以便轻松地将代码从桌面传输到微控制器或嵌入式系统中。修改之后,在linux环境下对其进行make,来执行自动化构建过程,从而得到.hex等文件。烧录成功后,即可采用usb接口连接,通过MicroPython实现对板子的控制。或者直接下载MicroPython,自己修改里面的配置的文件。
2024-09-18 16:02:53
256
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅