跟着openai学编程

news2024/11/20 23:30:02

装饰者模式

class Component:
    def operator(self):
        pass


class ConcreteComponent(Component):
    def operator(self):
        return "ConcreteComponent operator"


class Decorator(Component):
    def __init__(self, component) -> None:
        super().__init__()
        self.component = component

    def operator(self):
        return self.component.operator()


class ConcreteDecoratorA(Decorator):
    def operator(self):
        return "DecoratorA " + super().operator()


class ConcreteDecoratorB(Decorator):
    def operator(self):
        return "DecoratorB " + super().operator()


# 鍒涘缓鍏蜂綋缁勪欢
component = ConcreteComponent()
print("Component: ", component.operator())

# 浣跨敤鍏蜂綋瑁呴グ鑰匒鍖呰缁勪欢
decorator_a = ConcreteDecoratorA(component)
print("Decorator A: ", decorator_a.operator())

# 浣跨敤鍏蜂綋瑁呴グ鑰匓鍖呰缁勪欢
decorator_b = ConcreteDecoratorB(component)
print("Decorator B: ", decorator_b.operator())

# 浣跨敤鍏蜂綋瑁呴グ鑰匒鍜孊鐨勭粍鍚堝寘瑁呯粍浠?
decorator_ab = ConcreteDecoratorA(ConcreteDecoratorB(component))
print("Decorator A + B: ", decorator_ab.operator())

在这里插入图片描述

可以极大的减少自学的成本

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1195577.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL最新2023年面试题及答案,汇总版(4)【MySQL最新2023年面试题及答案,汇总版-第三十四刊】

文章目录 MySQL最新2023年面试题及答案,汇总版(4)01、一个6亿的表a,一个3亿的表b,通过外键tid关联,你如何最快的查询出满足条件的第50000到第50200中的这200条数据记录?02、SQL语句优化的一些方法有哪些?03…

机器人入门(五)—— 仿真环境中操作TurtleBot

仿真环境中操作TurtleBot 一、实操1.1 查看姿态信息1.2 控制turtlebot移动的三种方式1.2.1 命令行发布指令1.2.2 键盘操控1.2.3 Python脚本控制1.2.4 使用rqt工具界面,发布运动指令 二、里程计(odometry)TurtleBot3 仿真 进行实操之前,先准备环境 $ sud…

【每日OJ——21. 合并两个有序链表(链表)】

每日OJ——21. 合并两个有序链表(链表) 1.题目:21. 合并两个有序链表 (链表)2.方法讲解:2.1.解法一:递归2.1.1.图文解析2.1.2.代码实现2.1.3.提交通过展示 2.2.解法二:迭代(无哨兵位…

网络运维Day09

文章目录 环境准备ssh远程管理远程管理进阶MobaXterm远程工具 环境准备 远程管理linux主机 环境准备如下方表格(主机名IP)使用CentOS7.9克隆一台新的机器 主机名IP地址som.tedu.cn192.168.4.7/24pc207.tedu.cn192.168.4.207/24 将虚拟机A、B的网络模式选择为vmnet1 真机网络…

Hololens开发笔记

1、关闭阴影 2、将相机渲染改为后向。因为默认是Forward,当在场景里面想使用点光源时,运行起来三角面会翻倍,影响软件运行流畅度。 3、第三人称同步相关。开启Host/Sever/Client前,需要将所有挂有NetworkObject/NetworkTransfor…

ai批量剪辑矩阵无人直播一站式托管系统源头技术开发

1.全店IP形象打造----剪辑 全店IP打造模式为场景组合,需要在每个场景内按照顺序分别上传短视频素材,会与选中的音乐、标题文案组合生成有逻辑顺序的视频。可调配标题字号大小、音频音量大小。如想要携带团购地址可设置POI。可开启团购引导动画、镜头转场…

HTML页面模拟了一个类似Excel的表格在线diy修改表格内容

html实现在线表格编辑,可以修改每个表格内容,并且可以添加行和列 这个HTML页面模拟了一个类似Excel的表格,可以添加和删除行和列,并且可以编辑每个表格的内容。通过点击按钮可以添加新的行和列,通过按钮可以删除最后一…

近日的ChatGPT宕机事件,竟是黑客组织的蓄谋攻击!?还声称要教训OpenAI和奥特曼

作者 | 王二狗 想必大家都知道了,近日无论是ChatGPT还是其API服务都出现了长时间的线上崩溃! Sam Altman还下场亲自道歉说是因为太受欢迎导致服务器负载超荷。 大模型研究测试传送门 GPT-4传送门(免墙,可直接测试,遇…

【算法与数据结构】131、LeetCode分割回文串

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析:本题仍然使用回溯算法的一般结构。加入了一个判断是否是回文串的函数,利用起始和终止索引进…

YOLOv8模型ONNX格式INT8量化轻松搞定

ONNX格式模型量化 深度学习模型量化支持深度学习模型部署框架支持的一种轻量化模型与加速模型推理的一种常用手段,ONNXRUNTIME支持模型的简化、量化等脚本操作,简单易学,非常实用。 ONNX 模型量化常见的量化方法有三种:动态量化…

智慧工地源码:助力数字建造、智慧建造、安全建造、绿色建造

智慧工地围绕建设过程管理,建设项目与智能生产、科学管理建设项目信息生态系统集成在一起,该数据在虚拟现实环境中,将物联网收集的工程信息用于数据挖掘和分析,提供过程趋势预测和专家计划,实现工程建设的智能化管理&a…

类与对象(2)

✨前言✨ 📘 博客主页:to Keep博客主页 🙆欢迎关注,👍点赞,📝留言评论 ⏳首发时间:2023年11月11日 📨 博主码云地址:博主码云地址 📕参考书籍&…

HaaS510开板式DTU真机连云:上报监测数据至阿里云物联网平台

背景 HaaS: Hardware as a Service。 HAAS510 是一种开板式 DTU ,旨在为用户已开发好的设备快速增加 4G 连云能力的 4G CAT1 数传模块。它通过将模组与用户设备集成到一个外壳内,既保持设备的一体性,又降低重新开发 PCB 的时间消耗和模组开…

canvas 简单直线轨迹运动与线性插值计算

canvas 简单直线轨迹运动与线性插值计算 一、canvas 直线轨迹运行 添加 canvas 语法提示 通过/** type {HTMLCanvasElement} */代码块 来添加canvas的语法提示 <body><canvas id"canvas"></canvas> </body> <script>/** type {HTM…

区块链探秘:从基础到深度,全面解读区块链技术与应用

1.区块链基本概念 1.发展历史 比特币诞生&#xff1a; 2008年&#xff0c;化名为中本聪的人发表了论文《Bitcoin&#xff1a;A Peer-to-Peer Electronic Cash System》 2009年1月3日&#xff0c;中本聪开发运行了比特币客户端程序并进行了首次挖矿&#xff0c;获得了第一批…

进阶课6——基于Seq2Seq的开放域生成型聊天机器人的设计和开发流程

情感聊天机器人通常属于开放领域&#xff0c;用户可以与机器人进行各种话题的互动。例如&#xff0c;微软小冰和早期的AnswerBus就是这种类型的聊天机器人。基于检索的开放领域聊天机器人需要大量的语料数据&#xff0c;其开发流程与基于任务型的聊天机器人相似&#xff0c;而基…

4面百度软件测试工程师的面试经验总结

没有绝对的天才&#xff0c;只有持续不断的付出。对于我们每一个平凡人来说&#xff0c;改变命运只能依靠努力幸运&#xff0c;但如果你不够幸运&#xff0c;那就只能拉高努力的占比。 2023年7月&#xff0c;我有幸成为了百度的一名测试工程师&#xff0c;从外包辞职了历经100…

解决Scrapy爬虫多线程导致抓取错乱的问题

目录 一、概述 二、问题分析 三、解决方案 四、案例分析 五、总结 一、概述 Scrapy是一个流行的Python爬虫框架&#xff0c;可以轻松地抓取网页数据并对其进行解析。然而&#xff0c;在抓取过程中&#xff0c;如果使用多线程进行并发处理&#xff0c;可能会遇到数据抓取错…

TCP触发海康扫码相机S52CN-IC-JQR-NNN25

PC环境设置 为保证客户端正常运行以及数据传输的稳定性&#xff0c;在使用客户端软件前&#xff0c;需要对 PC 环境 进行设置 关闭防火墙 操作步骤如下&#xff1a; 1. 打开系统防火墙。 2. 在自定义设置界面中&#xff0c;选择关闭防火墙的对应选项&#xff0c;并单击…

Linux学习教程(第一章 简介)1

Linux 系统已经渗透到 IT 领域的各个角落&#xff0c;作为一名 IT 从业人员&#xff0c;不管你是专注于编程&#xff0c;还是专注于运维&#xff0c;都应该对 Linux 有所了解&#xff0c;甚至还要深入学习&#xff0c;掌握核心原理。 Linux 学习建议&#xff1a;一定要安装 Li…