python教程
vb200811
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
从远程机器通过 Python 调用 本地部署Ollama 大模型服务
本文介绍了如何在局域网内跨系统调用Ollama部署的大语言模型。在Ubuntu系统上安装Ollama并部署qwen3.5:0.8b模型后,通过修改服务配置使Ollama监听所有网络接口(0.0.0.0:11434),并配置防火墙放行端口。最后演示了从Windows电脑使用Python的requests库远程调用Ubuntu主机上的模型,实现非流式对话功能。原创 2026-03-20 17:10:02 · 81 阅读 · 0 评论 -
ubuntu22.04 双击图标执行Shell 脚本
本文介绍了在Ubuntu 22.04中创建并运行桌面脚本的完整流程:1)使用nano编辑器创建脚本文件123.sh并添加简单输出命令;2)为脚本添加执行权限;3)创建.desktop启动器文件并配置基本信息;4)设置启动器执行权限;5)在桌面环境中启用启动器,特别注意勾选"Allow executing"和"Allow launching"选项;6)通过双击桌面图标验证脚本运行结果。该方法适用于简单脚本执行,复杂脚本需在此基础上进行调整。原创 2026-02-11 10:32:04 · 145 阅读 · 0 评论 -
面向非技术人员的 PowerShell 脚本启动流程
本文介绍了如何为不懂编程的用户简化Python程序执行流程,重点以YOLOv26目标检测程序为例。通过创建PowerShell启动脚本实现"一键运行"功能,该脚本包含五个关键步骤:检查conda环境、激活指定环境、验证环境状态、检查脚本路径有效性、执行Python程序。文中详细说明了两种部署方式(独立文件夹或桌面快捷方式),并提供了完整的PowerShell脚本代码,其中包含详细的错误处理和状态验证机制。同时给出了YOLOv26检测程序的Python示例代码,展示了如何使用OpenCV调原创 2026-02-04 12:02:06 · 145 阅读 · 0 评论 -
Windows 系统 Miniforge 适配 PyCharm
本文介绍了在PyCharm中配置Miniforge环境的步骤:首先安装Miniforge并配置环境变量,然后在PyCharm设置中添加Miniforge解释器,指定conda.bat路径并选择创建新环境或使用已有环境。文章还对比了mamba和conda的特性差异,指出mamba作为conda的升级版,具有C++核心实现、更快的依赖解析速度、多线程下载、低内存占用等优势,同时保持完全兼容conda命令和环境,特别适合处理复杂依赖环境。原创 2026-01-27 13:50:40 · 494 阅读 · 0 评论 -
Python 自定义迭代器 --以斐波那契数列为例
本文介绍了一个自定义斐波那契数列迭代器FibIterator。该迭代器通过实现__iter__和__next__方法,按需生成不超过max_num的斐波那契数。核心逻辑使用a、b两个变量动态更新数列,避免递归或列表存储。当数值超过max_num时抛出StopIteration终止迭代。示例显示max_num=10时输出0112358。这种实现方式符合Python迭代器协议,适用于需惰性求值和节省内存的场景。原创 2025-11-13 14:23:10 · 247 阅读 · 0 评论 -
Python 自定义容器类
摘要:SmartRefrigerator是一个模拟智能冰箱的Python自定义容器类,使用字典存储食物(键)及其数量(值)。通过实现特殊方法(如__getitem__、__setitem__等)来模拟冰箱的基本操作:查看/添加/丢弃食物、检查库存、合并冰箱等。类还提供添加(add)、消耗(use)等便捷方法。示例演示了从初始化、日常使用到合并冰箱的全流程,展示了如何像操作真实冰箱一样自然地管理食物库存,体现了Python特殊方法在创建直观容器类中的应用价值。(150字)原创 2025-11-11 14:08:29 · 247 阅读 · 0 评论 -
Python 自定义容器类
摘要:自定义People类封装了人员管理功能,相比普通列表具有显著优势。该类支持添加、查找、过滤人员,自动处理姓名重复检查(可配置),并提供平均年龄计算、JSON序列化等便捷方法。通过重载__iter__、__len__等魔术方法,实现类列表操作。核心优势包括:1)集中业务规则,避免代码重复;2)修改维护成本低;3)接口清晰易用;4)便于单元测试。示例展示了不允许重名时的人员添加、查找成年人等典型用法,并演示了异常处理和JSON输出功能。原创 2025-11-10 14:20:50 · 252 阅读 · 0 评论 -
Python 状态机
transitions是一个轻量级Python状态机库,支持层次化状态机和条件转换。示例展示了如何使用枚举定义物质状态(固态、液态、气态、等离子态),并通过状态机管理状态转换。库特性包括:1) 支持状态转换回调函数;2) 提供条件性转换(Guards);3) 可与FastAPI等框架集成。示例演示了状态触发(next/sublimate)、状态检查(is_xxx)以及转换回调(on_enter/on_exit)。安装方式为pip install transitions,适合需要管理复杂状态转换的应用场景。原创 2025-11-06 17:07:47 · 212 阅读 · 0 评论 -
Python 适配器模式(Adapter)
摘要:适配器模式通过包装不兼容接口使类能协同工作。其核心组件包括目标接口(客户期望的规范)、适配者(需适配的旧接口类)和适配器(实现目标接口并包装适配者)。示例展示了新支付接口与旧现金支付系统的适配过程:适配器在不修改旧代码的情况下,将新接口的金额参数整合到旧支付结果中,实现系统兼容。这种方式既保持了旧系统功能,又满足了新系统对金额记录的需求,体现了适配器在不破坏原有结构的前提下实现接口转换的优势。原创 2025-10-30 10:38:13 · 281 阅读 · 0 评论 -
Python 枚举
本文展示了使用枚举和工厂模式创建动物实例的Python实现。通过AnimalType枚举严格限定动物类型,配合Animal抽象基类定义接口,Dog和Cat类实现具体逻辑。AnimalFactory工厂类根据枚举值创建对应实例,避免了硬编码和类型错误。代码结构清晰,结合类型提示和异常处理,体现了良好的设计模式和代码规范。输出示例验证了狗"Woof!"和猫"Meow!"的正确叫声。原创 2025-10-30 09:35:08 · 288 阅读 · 0 评论 -
Python 简单模拟披萨生产流程
本文介绍了一个三工位披萨流水线模拟系统。系统包含三个固定工位:铺面团、涂酱料和加配料,采用输入队列管理订单。程序模拟了5个订单的生产过程,展示订单如何从队列进入工位1,逐步流转至工位3完成。通过周期性推进机制,每个工位同步工作,当前工位完成后将披萨移交下一工位,同时从队列加载新订单。系统能清晰展示流水线作业中的订单排队、工位占用和产品流转过程,最终输出所有完成订单。该模型有效模拟了制造业流水线的基本原理和工作流程。原创 2025-10-28 10:33:37 · 196 阅读 · 0 评论 -
Python 简单模仿组装、射击的动作
摘要 本文设计了一个包含子弹、弹匣、枪和人类的交互模型。模型包含四个类:Bullet(子弹,含伤害值属性)、Magazine(弹匣,管理子弹存储,有容量限制)、Gun(枪,可装载弹匣并发射子弹)和Person(人,能执行压子弹、装弹匣和射击操作)。交互逻辑包括:人可将子弹压入弹匣(受容量限制)、将弹匣装入枪(一次一个弹匣)、用枪射击目标(目标生命值减少)。测试场景展示了两个士兵从装弹到射击的全过程,包括生命值减少直至死亡的状态变化。该模型完整实现了武器系统的基本操作流程和伤害计算机制。原创 2025-08-20 09:47:17 · 292 阅读 · 0 评论 -
Python 根据参数类型执行不同的处理逻辑
摘要:实现了一个物品处理系统,包含Item类和ItemProcessor类。Item类存储物品名称和价值,ItemProcessor类通过process_items方法处理单个Item或Item列表。该方法使用类型检查区分处理逻辑:对单个物品显示详细信息,对列表计算总价值并逐项展示。示例演示了处理器如何处理单个苹果(5.99)和包含苹果、香蕉(3.99)、橙子(4.99)的列表,输出总价值14.97。系统采用Python类型注解确保参数类型安全。原创 2025-08-18 16:20:55 · 232 阅读 · 0 评论 -
Python getattr()、__getattr__ 简单结合实例
本文介绍了Python中两种处理对象属性的方法:内置函数getattr()和特殊方法__getattr__。getattr()用于获取对象的属性值,接受对象、属性名和可选默认值参数,若属性不存在且无默认值则抛出AttributeError。__getattr__则在访问不存在属性时被调用,允许自定义处理逻辑。通过示例展示了如何用getattr()获取实例属性和方法,以及如何用__getattr__实现代理模式。后者还能与__getitem__配合,支持字典式访问。两种机制为Python属性访问提供了灵活的控原创 2025-08-12 09:25:52 · 269 阅读 · 0 评论 -
Python 多态、泛型、协议 简单结合应用
这篇文章展示了一个使用Python类型注解和协议的动物叫声处理系统。代码定义了一个Animal基类和多个具体动物类(Dog、Cat、Bird),每个类实现make_sound方法返回特定叫声。通过AnimalType协议规范动物类型标识类必须提供animal_cls属性,并使用@runtime_checkable支持运行时检查。AnimalSound泛型类维护动物类型到实例的映射,通过结构子类型检查处理不同类型动物的叫声查询。系统可以灵活扩展新动物类型(如Fish),体现了Python类型系统的灵活性和协议原创 2025-08-11 14:11:52 · 447 阅读 · 0 评论 -
Python 类作为装饰器入门
文中通过TimeLogger装饰器类示例访问被装饰方法时,先触发__get__返回包装函数,调用时再执行__call__中的装饰逻辑。原创 2025-07-28 16:59:08 · 357 阅读 · 0 评论 -
modbus over RS485 (Python 实现)
本文介绍了USB转串口驱动(CH341SER.EXE)的安装方法及Modbus RTU数据采集的实现。首先需下载并安装驱动程序,连接设备后查看端口号。文中指出寄存器数值需根据数据类型和系数转换(如UINT16类型需乘以0.001)。随后提供了一个完整的Python代码示例,使用modbus_tk库实现温度数据采集(读取输入寄存器)和寄存器写入功能。代码包含串口初始化、数据采集循环、异常处理等模块,支持命令行参数配置端口、波特率等参数,并通过日志记录运行状态。该方案适用于工业自动化领域的Modbus设备数据采原创 2025-07-14 15:26:22 · 237 阅读 · 0 评论 -
python 异常捕获简单案例
这是一个内容发布器的Python类实现示例。ContentPublisher类包含内容验证和发布功能:初始化时内容验证状态为False;validate_content方法检查内容长度是否超过10字符;publish方法会先验证内容,未通过时抛出异常,通过则发布内容。示例演示了发布短内容(失败)和长内容(成功)两种情况。该实现展示了基本的验证流程和异常处理机制。原创 2025-06-06 11:40:21 · 222 阅读 · 0 评论 -
利用numpy解逆矩阵
本文介绍了使用NumPy库求解矩阵逆矩阵及其在线性方程组中的应用。首先通过计算行列式判断矩阵是否可逆,若可逆则用np.linalg.inv()求逆矩阵。示例展示了求解逆矩阵并验证其正确性。接着演示了如何利用np.linalg.solve()方法直接求解线性方程组AX=B,并进行结果验证。文中提供了完整的Python代码示例,包括矩阵可逆性判断、逆矩阵求解和验证,以及线性方程组的求解过程。这些方法为处理矩阵运算和线性方程组提供了简便的数值计算解决方案。原创 2025-06-05 14:00:02 · 143 阅读 · 0 评论 -
python 简单模拟组装操作
摘要:本文介绍了使用Python模拟房屋家具摆放的实现方法。通过定义两个类:HouseItem(家具类)和House(房子类),其中家具类包含名称和占地面积属性,房子类包含户型、总面积和剩余面积等属性。核心功能是通过add_item方法向房子添加家具,并自动计算剩余面积。代码示例创建了床、衣柜和餐桌三个家具对象,将它们添加到60平米;两室一厅中,最终输出房屋信息和剩余面积51.5平米。该实现展示了Python面向对象编程的基本应用。原创 2025-06-05 11:44:02 · 394 阅读 · 0 评论
分享