logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Python argparse 模块:轻松搞定命令行参数解析

Python的argparse模块是标准库中处理命令行参数的高效工具,遵循"定义规则→解析输入→使用参数"的流程。它支持多种参数类型(数值、开关型等),可设置短/长选项、默认值和帮助信息,自动完成参数校验和错误处理。核心优点包括自动解析、类型检查、灵活配置和自动生成帮助文档。工作原理是通过ArgumentParser创建规则容器,添加参数定义后解析命令行输入,最终生成可直接使用

#python#开发语言
NumPy 系列(零):从 Python 到「数组」—— 为什么 NumPy 是数据科学的第一块基石

NumPy是Python科学计算的核心库,解决了Python原生list在高密度数值计算中的两大痛点:内存消耗大和运行速度慢。它提供高效的多维数组对象ndarray,采用连续内存块存储固定类型数据,支持向量化运算和广播机制,性能比原生list快50-80倍,内存占用仅为1/4。NumPy作为数据科学基础库,为Pandas、SciPy、Scikit-learn等高级库提供统一数据载体,同时通过内存接

#numpy#python
ROS2系列 (19) : C++服务通信实例——自定义巡逻服务接口(接口创建篇)

本文介绍了在ROS2中创建自定义C++服务接口的具体流程。以"巡逻海龟"案例为例,详细说明了如何在已有功能包中添加自定义服务接口,包括:1) 创建Patrol.srv文件定义请求和响应结构;2) 配置package.xml声明接口依赖;3) 更新CMakeLists.txt设置构建规则。文章还提供了构建验证的方法,为后续开发服务端和客户端奠定了基础。通过本教程,开发者可以掌握R

ROS2系列 (10) : C++话题通信节点——发布者示例

本文介绍了ROS2中C++话题发布者的实现方法,通过控制海龟模拟器画圆的案例,详细讲解了创建C++功能包、配置发布者和定时器、实现画圆逻辑等关键技术要点。文章重点解决了显式类型声明、避免隐式转换、计算圆半径的数学原理等核心问题,并提供了完整的代码示例和构建运行流程。该案例展示了如何利用C++在ROS2中实现周期性话题发布,为读者提供了机器人运动控制的基础实现模板。

#c++
ROS2系列 (11) : C++话题通信节点——订阅者示例

本文介绍了ROS2 C++话题通信中订阅者节点的实现方法,在demo_cpp_topic功能包中添加目标点控制订阅者节点。通过修改CMakeLists.txt实现多节点共存,包括创建target_controller.cpp订阅海龟位姿并控制其运动到目标点。详细解析了运动控制算法,包括误差计算(距离和角度)和闭环控制策略。最后提供了构建和运行流程,演示了海龟从初始位置向目标点移动的过程。该方案展示

#c++
ROS2系列 (17) : Python服务通信实例实例——Server端

本文介绍了基于ROS2的Python人脸检测服务端实现。服务端接收客户端发送的图像,使用face_recognition库检测人脸位置,返回人脸数量、耗时及边界框信息。核心步骤包括:1)创建功能包并安装依赖库(face_recognition、OpenCV等);2)编写服务端代码,通过cv_bridge转换图像格式,实现人脸检测回调函数;3)配置功能包并构建运行。该服务端适用于ROS2 Pytho

#python
ROS2系列 (9) : Python话题通信节点——订阅者示例

本文介绍了如何使用ROS2和Python实现一个订阅小说话题并朗读的节点。通过创建订阅者节点,接收发布者发送的小说文本,并借助espeak-ng库实现中文语音合成。为解决"发布快、朗读慢"问题,采用队列缓冲和多线程技术分离接收与朗读逻辑。文章详细说明了环境准备、功能包集成、依赖配置、代码编写等步骤,并提供了构建和运行完整流程的指导。该方案可扩展应用于语音播报、异步处理等场景,展

#python
ubuntu配置cuda与torch

本文详细介绍了CUDA Toolkit安装及多版本管理的方法。

#ubuntu#linux
Flask 核心基础:从 路由装饰器 到 __name__ 变量 的底层逻辑解析

@app.route("/")实际上是Flask类方法实现的"装饰器工厂",通过实例方法支持多应用隔离,将URL路径与视图函数绑定到实例的url_map中。__name__变量则动态确定应用根目录,用于定位静态资源和模板文件,其值随运行方式变化(直接运行时为"__main__",导入时为模块名)。这两个设计体现了Flask巧妙运用Python语言特性,在简化代码的同时保证灵活性和资源隔离。

#flask#python
设计模式:责任链模式 Chain of Responsibility

责任链模式是一种行为设计模式,它将请求沿着处理者链传递,每个处理者决定处理请求或传递给下一个处理者。本文通过在线订购系统的例子,说明如何将认证、数据清理、防暴力破解等检查步骤解耦为独立处理对象,避免代码臃肿。代码示例展示了一个审批链:普通处理者处理小额请求,大Boss处理大额请求,否则拒绝。该模式通过统一接口使处理者相互独立,支持动态调整处理流程,提高系统灵活性和可维护性。关键优势在于可以随时增删

文章图片
#设计模式#责任链模式
到底了