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

【ChatGPT 指令大全】怎么使用ChatGPT辅助程式开发

目录

写程式

解读程式码

重构程式码

解 bug

写测试

写 Regex

总结


在当今快节奏的数字化世界中,程式开发变得越来越重要和普遍。无论是开发应用程序、网站还是其他软件,程式开发的需求都在不断增长。然而,有时候我们可能会遇到各种问题,影响我们的工作进度,如果使用ChatGPT作为辅助工具,那么将大大提升工作效率。

 

写程式

你现在是一个 [程式语言] 专家,请帮我用 [程式语言] 写一个函式,它需要做到 [某个功能]

问:你现在是一个 JavaScript 专家,请帮我用 JavaScript 写一个函式,它需要做到 输入一个一维阵列,把这个一维阵列转换成二维阵列。同时我要能够自由地决定二维阵列中的子阵列长度是多少

答:当然,我可以帮你编写这个函数。以下是一个使用 JavaScript 实现的函数,它将一维数组转换为二维数组,并根据给定的子阵列长度划分:

function convertTo2DArray(arr, subarrayLength) {var result = [];for (var i = 0; i < arr.length; i += subarrayLength) {result.push(arr.slice(i, i + subarrayLength));}return result;
}

这个函数接收两个参数:`arr` 是输入的一维数组,`subarrayLength` 是子阵列的长度。

我们使用一个循环来遍历一维数组,然后使用 `slice` 方法将每个子阵列从原始数组中提取出来,并将其推入新的二维数组 `result` 中。最后返回这个新的二维数组。

下面是一个示例,展示如何使用这个函数:

var arr = [1, 2, 3, 4, 5, 6, 7, 8];
var subarrayLength = 3;
var result = convertTo2DArray(arr, subarrayLength);
console.log(result);

在这个示例中,我们将一维数组 `[1, 2, 3, 4, 5, 6, 7, 8]` 转换为二维数组,其中每个子数组的长度为 3。输出结果如下:
[
  [1, 2, 3],
  [4, 5, 6],
  [7, 8]
]
 

希望这个函数能满足你的需求!如果有任何问题,请随时向我提问。

 

解读程式码

你现在是一个 [程式语言] 专家,请告诉我以下的程式码在做什么。 [附上程式码]

重构程式码

你现在是一个 Clean Code 专家,我有以下的程式码,请用更干净简洁的方式改写,让我的同事们可以更容易维护程式码。另外,也解释为什么你要这样重构,让我能把重构的方式的说明加到 Pull Request 当中。 [附上程式码]

解 bug

你现在是一个 [程式语言] 专家,我有一段程式码,我预期这段程式码可以 [做到某个功能],只是它通过不了 [测试案例] 这个测试案例。请帮我找出我哪里写错了,以及用正确的方式改写。[附上程式码]

你现在是一个 python 专家,我有一段程式码,我预期这段程式码可以判断一个字串是不是镜像回文,只是它通过不了 aacdeedcc 这个测试案例。请帮我找出我哪里写错了,以及用正确的方式改写。[附上程式码]

写测试

你现在是一个 [程式语言] 专家,我有一段程式码 [附上程式码],请帮我写一个测试,请至少提供五个测试案例,同时要包含到极端的状况,让我能够确定这段程式码的输出是正确的。

 

写 Regex

你现在是一个 Regex 专家,请帮我写一个 Regex ,它能够把 [需求]

问:你现在是一个 Regex 专家,请帮我写一个 Regex ,它能够把输入一个字串,把这个字串中的所有数字都取出来

答:当然,我可以帮你编写一个正则表达式来提取一个字符串中的所有数字。下面是一个使用 JavaScript 的示例:

var str = "Hello, 123 World! 456";
var regex = /\d+/g;
var result = str.match(regex);
console.log(result);

在这个例子中,我们使用 `/ \d+ /g` 这个正则表达式来匹配字符串中的所有数字。这个正则表达式包含两部分:

- `\d`:匹配任意一个数字字符。
- `+`:表示匹配一个或多个连续的数字字符。

`g` 标志表示全局匹配,这样可以匹配到字符串中的所有数字。

接下来,我们使用 `match` 函数来查找字符串中与正则表达式匹配的所有结果,并将它们存储在 `result` 变量中。

在上面的例子中,输入字符串为 `"Hello, 123 World! 456"`,输出结果为一个数组 `[ "123", "456" ]`,也就是从字符串中提取出的所有数字。

你可以根据需要将上述代码嵌入到你的 JavaScript 程序中,并使用不同的字符串进行测试。希望这个正则表达式对你有帮助!如有任何疑问,请随时向我提问。

总结

作为程式开发的辅助工具,ChatGPT为编程者提供了一个强大的资源。无论是解决编码问题、进行算法优化还是获取编程建议,ChatGPT都可以提供有益的帮助。通过与ChatGPT进行对话,我们可以快速获取解决方案,并与一个聪明、灵活的虚拟伙伴进行互动。

然而,请记住,虽然ChatGPT可以为我们提供有用的建议,但它仅仅是一个辅助工具。在编程过程中,仍然需要我们的专业知识和判断力来决定最佳的解决方案。

相关文章:

【ChatGPT 指令大全】怎么使用ChatGPT辅助程式开发

目录 写程式 解读程式码 重构程式码 解 bug 写测试 写 Regex 总结 在当今快节奏的数字化世界中&#xff0c;程式开发变得越来越重要和普遍。无论是开发应用程序、网站还是其他软件&#xff0c;程式开发的需求都在不断增长。然而&#xff0c;有时候我们可能会遇到各种问题…...

涂色

蜀山区2021年信息学竞赛试题 题目描述 Description 小李喜欢写日记&#xff0c;为了有效区分每题记录的内容&#xff0c;他循环使用七种不同颜色的笔在日记本上记录每天发生的事情&#xff0c;循环次序分别为Red,Orange,Yellow,Green,Blue,Cyan,Purple,由于近期工作繁忙&…...

微服务——数据同步

问题分析 mysql和redis之间有数据同步问题&#xff0c;ES和mysql之间也有数据同步问题。 单体项目可以在crud时就直接去修改&#xff0c;但在微服务里面不同的服务不行。 方案一 方案二 方案三 总结 导入酒店管理项目 倒入完成功启动后可以看见数据成功获取到了 声明队列和…...

MySQL 手机选号(AABB、ABCD、DCBA、AAA),SQL SERVER 手机选号(AABB、ABCD、DCBA、AAA),通过规则查询靓号

先上SQL SERVER&#xff1a; create table plat_uidlist(Uidd varchar(15) , Areaid int , State int)insert into plat_uidlist values(2335435 ,8 ,0 ) insert into plat_uidlist values(2335436 ,8 ,1 ) insert into plat_uidlist values(2335437 ,2 ,2 ) insert into plat…...

【server组件】——mysql连接池的实现原理

目录 1.池化技术 2.数据库连接池的定义 3.为什么要使用连接池 4. 数据库连接池的运行机制 5. 连接池与线程池的关系 6. CResultSet的设计 6.1构造函数 7. CDBConn的设计 6.1.构造函数 6.2.init——初始化连接 8.数据库连接池的设计要点 9.接口设计 9.1 构造函数 …...

DSP开发:串口sci的发送与接收实现

DSP开发&#xff1a;串口sci的发送与接收实现 文章目录 DSP开发&#xff1a;串口sci的发送与接收实现串口配置串口SCI初始化详细分析串口SCI使用 串口配置 /*--------------------------------------------scia----------------------------*/ /*----------------------------…...

实训一 :Linux的启动、关机及登录

实训一 &#xff1a;Linux的启动、关机及登录 2017 年 2 月 22 日 今日公布 实训目标 完成本次实训&#xff0c;将能够&#xff1a; 描述Linux的开机过程。在图形模式和文本模式下登录Linux。关闭和重启Linux 实训准备 一台已安装RHEL6的虚拟计算机&#xff0c;Linux虚拟…...

Redis分布式锁问题

1、业务单机情况下 问题&#xff1a;并发没有加锁导致线程安全问题。 解决方法&#xff1a;加锁处理&#xff0c;如lock、synchronized 仍有问题&#xff1a;业务分布式情况下&#xff0c;代码级别加锁已经无效。需要借助第三方组件&#xff0c;如redis、zookeeper。 2、业务分…...

windows安装apache-jmeter-5.6.2教程

目录 一、下载安装包&#xff08;推荐第二种&#xff09; 二、安装jmeter 三、启动jmeter 一、下载安装包&#xff08;推荐第二种&#xff09; 1.官网下载&#xff1a;Apache JMeter - Download Apache JMeter 2.百度云下载&#xff1a;链接&#xff1a;https://pan.baidu.…...

密码检查-C语言/Java

描述 小明同学最近开发了一个网站&#xff0c;在用户注册账户的时候&#xff0c;需要设置账户的密码&#xff0c;为了加强账户的安全性&#xff0c;小明对密码强度有一定要求&#xff1a; 1. 密码只能由大写字母&#xff0c;小写字母&#xff0c;数字构成&#xff1b; 2. 密码不…...

基于Matlab实现心电信号小波特征提取和对应疾病识别仿真(附上源码+数据集)

本文基于Matlab平台&#xff0c;研究了心电信号的小波特征提取方法&#xff0c;并应用于心电信号疾病识别仿真实验中。首先&#xff0c;介绍了心电信号的基本特征和常见的心电疾病。然后&#xff0c;详细阐述了小波变换的原理和方法&#xff0c;并提出了一种基于小波分解和小波…...

第五十二天

HTML5 ●MathML 是数学标记语言&#xff0c;是一种基于XML&#xff08;标准通用标记语言的子集&#xff09;的标准&#xff0c;用来在互联网上书写数学符号和公式的置标语言。 ●拖放 拖放是一种常见的特性&#xff0c;即抓取对象以后拖到另一个位置。 在 HTML5 中&#xf…...

爬虫练手项目——获取龙族小说全文

网站信息 目标网站信息如下&#xff1a;包含了龙族1-5全部内容 代码 import requests from bs4 import BeautifulSoup import os import timeheaders {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Sa…...

OpenCV图像处理——几何变换

目录 图像缩放图像平移图像旋转图像的仿射变换透射变换图像金字塔 图像缩放 cv.resize(src,dsize,fx0,fy0,interpolationcv2.INTER_LINEAR)import numpy as np import cv2 as cv import matplotlib.pyplot as pltkidscv.imread(./汪学长的随堂资料/4/图像操作/dog.jpg) plt.im…...

Apache JMeter:完全指南

Apache JMeter 是一款开源的性能测试工具&#xff0c;可以用于测试 Web 应用程序、FTP 服务器、数据库等各种类型的服务器。本文将以 JMeter 5.5 为例介绍 JMeter 的使用方法。 下载和安装 由于 JMeter 是使用 Java 开发的&#xff0c;因此在运行之前必须先安装 JDK。您可以在…...

js obj 生成java 实体 entity

js obj 生成java 实体 entity D:\proj\js\js-util\gen_java.js 文档&#xff1a;js obj 生成java 实体 entity.note 链接&#xff1a;http://note.youdao.com/noteshare?idc61fbd4b8684dc41c8c9ab42107d5f87&subE7484F5F277041578A2E58FDC6320BA6 添加链接描述 class S…...

【第二阶段】kotlin语言的匿名函数与具名函数

fun main() {//匿名函数val niminginfoniming("kotlin",20,{"$it"})println(niminginfo)//具名函数 理解&#xff1a;showResult:(String)->String):StringshowResultImpl(result:String):Stringval juminginfoniming("c ",20,::showResultI…...

P1123 取数游戏

取数游戏 题目描述 一个 N M N\times M NM 的由非负整数构成的数字矩阵&#xff0c;你需要在其中取出若干个数字&#xff0c;使得取出的任意两个数字不相邻&#xff08;若一个数字在另外一个数字相邻 8 8 8 个格子中的一个即认为这两个数字相邻&#xff09;&#xff0c;求…...

JavaScript高级:原型与原型链继承方式

在 JavaScript 中&#xff0c;继承是一种重要的概念&#xff0c;它使得对象可以从其他对象继承属性和方法&#xff0c;实现代码的重用和扩展。原型与原型链是 JavaScript 中实现继承的核心机制&#xff0c;虽然听起来有些高深&#xff0c;但我们可以通过通俗易懂的方式来理解它…...

使用vue-grid-layout时 You may need an appropriate loader to handle this file type.

使用vue-grid-layout时 You may need an appropriate loader to handle this file type. node版本不匹配 我的node v14.16.0 vue-gride-layout 需要用 v 2.3.7的版本 卸载后重新安装即可...

Debian系统简介

目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版&#xff…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略

本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装&#xff1b;只需暴露 19530&#xff08;gRPC&#xff09;与 9091&#xff08;HTTP/WebUI&#xff09;两个端口&#xff0c;即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...

STM32标准库-DMA直接存储器存取

文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA&#xff08;Direct Memory Access&#xff09;直接存储器存取 DMA可以提供外设…...

【AI学习】三、AI算法中的向量

在人工智能&#xff08;AI&#xff09;算法中&#xff0c;向量&#xff08;Vector&#xff09;是一种将现实世界中的数据&#xff08;如图像、文本、音频等&#xff09;转化为计算机可处理的数值型特征表示的工具。它是连接人类认知&#xff08;如语义、视觉特征&#xff09;与…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

GC1808高性能24位立体声音频ADC芯片解析

1. 芯片概述 GC1808是一款24位立体声音频模数转换器&#xff08;ADC&#xff09;&#xff0c;支持8kHz~96kHz采样率&#xff0c;集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器&#xff0c;适用于高保真音频采集场景。 2. 核心特性 高精度&#xff1a;24位分辨率&#xff0c…...

Yolov8 目标检测蒸馏学习记录

yolov8系列模型蒸馏基本流程&#xff0c;代码下载&#xff1a;这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中&#xff0c;**知识蒸馏&#xff08;Knowledge Distillation&#xff09;**被广泛应用&#xff0c;作为提升模型…...

AGain DB和倍数增益的关系

我在设置一款索尼CMOS芯片时&#xff0c;Again增益0db变化为6DB&#xff0c;画面的变化只有2倍DN的增益&#xff0c;比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析&#xff1a; 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...

音视频——I2S 协议详解

I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议&#xff0c;专门用于在数字音频设备之间传输数字音频数据。它由飞利浦&#xff08;Philips&#xff09;公司开发&#xff0c;以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...

【JVM面试篇】高频八股汇总——类加载和类加载器

目录 1. 讲一下类加载过程&#xff1f; 2. Java创建对象的过程&#xff1f; 3. 对象的生命周期&#xff1f; 4. 类加载器有哪些&#xff1f; 5. 双亲委派模型的作用&#xff08;好处&#xff09;&#xff1f; 6. 讲一下类的加载和双亲委派原则&#xff1f; 7. 双亲委派模…...