目录
01.生成项目代码的框架
02.研究和比较
抓取社交网络的最佳选择是什么?
03.理解代码
以下代码的作用是什么?
04.在我们的代码中添加注释
05.使用某种风格重写我们的代码
总结
首页 科技周边 人工智能 ChatGPT 的五大功能可以帮助你提高代码质量

ChatGPT 的五大功能可以帮助你提高代码质量

Apr 14, 2023 pm 02:58 PM
人工智能 chatgpt 开发

ChatGPT 目前彻底改变了开发代码的方式,然而,大多数软件开发人员和数据专家仍然没有使用 ChatGPT 来改进和简化他们的工作。

这就是为什么我在这里概述 5 个不同的功能,以提高我们的日常工作速度和质量。

我们可以在日常工作中使用它们。现在,我们一起来了解一下吧。

注意:切勿在 ChatGPT 中使用关键代码或信息。

01.生成项目代码的框架

从头开始构建新项目时,ChatGPT 是我的秘密武器。只需几个提示,它就可以生成我需要的代码框架,包括我选择的技术、框架和版本。它不仅为我节省了至少一个小时左右的工作时间,而且还有助于使我的文档(或团队的文档)井井有条并保持最新,这就好像在给团队加外挂,感觉无形之中多了一双手!

例如,假设我想使用一些外部 API,我可以要求 ChatGPT 为我起草一个初始代码结构。

使用 Python 生成集成外部 API 的样板代码。

ChatGPT 立即回答:

图片

甚至,我可以请求一个框架来使用 Selenium 抓取 LinkedIn,ChatGPT 会给我以下输出。

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

# Initialize the web driver
driver = webdriver.Firefox()

# Navigate to LinkedIn
driver.get("https://www.linkedin.com/")

# Find the email and password input fields
email = driver.find_element_by_id("username")
password = driver.find_element_by_id("password")

# Enter your credentials
email.send_keys("YOUR_EMAIL")
password.send_keys("YOUR_PASSWORD")

# Click the login button
driver.find_element_by_xpath("//button[@type='submit']").click()

# Wait for the page to load
time.sleep(5)

# Navigate to the profile of the desired user
driver.get("https://www.linkedin.com/in/USER_PROFILE_NAME")

# Extract the information you want from the page
name = driver.find_element_by_xpath("//span[@]").text
location = driver.find_element_by_xpath("//span[@]").text

print(name)
print(location)

# close the browser
driver.quit()
登录后复制

很容易,对吧?尝试用您能想象到的任何项目来挑战 ChatGPT。

02.研究和比较

就如何实施某些事情做出决定可能很困难,尤其是当有多种选择可供选择时。我的首选方法是为每种方法创建一个基本的概念证明,然后将它们进行比较。但是,在 ChatGPT 的帮助下,这个过程变得简单多了。

我现在可以直接询问它的专家意见,了解哪个选项或库最适合我的代码开发。这节省了我在决策过程中的时间和精力,并确保我使用最好的工具来完成工作。

假设我想处理地理空间数据,但不确定是否应该使用 Geopandas 或 Plotly。我可以让 ChatGPT 为我进行比较——包含一个类型 ;它会立即回答两个库之间的主要区别。

ChatGPT 的五大功能可以帮助你提高代码质量

屏幕截图来源与ChatGPT 聊天,ChatGPT 向我解释了 geopandas 和 plotly 之间的区别

如果现在我想抓取一个网站,我可以问问最好的库是什么。ChatGPT 使用 Python 中最流行的网络抓取库来回答。

图片

屏幕截图来源与ChatGPT 聊天,ChatGPT 解释最流行的抓取网站

你甚至可以询问你想要抓取的网站的最佳选择是什么——尽管 ChatGPT 很可能会警告你这将违反该网站的内容政策——所以要小心。

抓取社交网络的最佳选择是什么?

图片

03.理解代码

我们都去过那里,努力理解不是我们创建的代码库。浏览复杂且组织不当的代码(也称为意大利面条代码)可能是一项令人沮丧且耗时的任务。

但是,有了 ChatGPT,理解新的代码库就变得容易多了。我现在可以简单地要求它解释代码的功能并立即理解它。无需再浪费宝贵的时间和精力来破译糟糕的代码。

假设我正在尝试抓取 Linkedin,我在互联网上发现了一个随机代码,该代码应该可以向下滚动 Linkedin 工作机会网站。

以下代码的作用是什么?

#We find how many jobs are offered.
jobs_num = driver.find_element(By.CSS_SELECTOR,"h1>span").get_attribute("innerText")
if len(jobs_num.split(',')) > 1:
jobs_num = int(jobs_num.split(',')[0])*1000
else:
jobs_num = int(jobs_num)

jobs_num = int(jobs_num)

#Here I choose manually a number of jobs, so it wont take that long:
jobs_num = 1000;


#We create a while loop to browse all jobs. 
i = 2
while i <= int(jobs_num/2)+1:
#We keep scrollind down to the end of the view.
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
i = i + 1
print("Current at: ", i, "Percentage at: ", ((i+1)/(int(jobs_num/2)+1))*100, "%",end="r")
try:
#We try to click on the load more results buttons in case it is already displayed.
infinite_scroller_button = driver.find_element(By.XPATH, ".//button[@aria-label='Load more results']")
infinite_scroller_button.click()
time.sleep(0.1)
except:
#If there is no button, there will be an error, so we keep scrolling down.
time.sleep(0.1)
pass
登录后复制

ChatGPT 会立即对上面的代码进行非常详细的解释,你甚至可以在代码给定部分中询问更多详细信息——只需稍微玩一下 ChatGPT,您就会发现它可以创造很多奇迹。

图片

屏幕截图 ChatGPT 聊天,ChatGPT 解释了我没看懂的代码

04.在我们的代码中添加注释

ChatGPT 还可以帮助我们提高自己代码的质量和可维护性,通过你提出的要求,它会逐行添加注释,我们可以确保我们的代码在发布前得到正确记录。这帮助我们实现了对代码添加注释的要求,并使其他人更容易理解和使用我们的代码。

ChatGPT 可以明显提高了代码可读性、可维护性和与他人协作的能力。

假设之前的代码根本没有注释,我们可以让 ChaGPT 直接给它添加注释。

以下是ChatGPT为代码添加注释 :

# Find the number of jobs offered on the website
jobs_num = driver.find_element(By.CSS_SELECTOR,"h1>span").get_attribute("innerText")

# Check if the number of jobs contains a ',' and if so, convert it to number * 1000
if len(jobs_num.split(',')) > 1:
jobs_num = int(jobs_num.split(',')[0])*1000
else:
jobs_num = int(jobs_num)

# Convert jobs_num to an integer
jobs_num = int(jobs_num)

# Set the number of jobs to scrape to 1000
jobs_num = 1000;

# Initialize a counter variable to scroll through the jobs
i = 2

# Start a while loop to scroll through the jobs
while i <= int(jobs_num/2)+1:
# Scroll to the bottom of the page
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
# Increment the counter variable
i = i + 1
# Print the current number of jobs scrolled through and the percentage of completion
print("Current at: ", i, "Percentage at: ", ((i+1)/(int(jobs_num/2)+1))*100, "%",end="r")
try:
# Try to locate the "Load more results" button and click on it
infinite_scroller_button = driver.find_element(By.XPATH, ".//button[@aria-label='Load more results']")
infinite_scroller_button.click()
# Sleep for 0.1 seconds
time.sleep(0.1)
except:
# If the button is not present, sleep for 0.1 seconds and continue scrolling
time.sleep(0.1)
pass
登录后复制

令人印象深刻吧?基本可以添加注释的代码均添加了。

05.使用某种风格重写我们的代码

ChatGPT 不仅是理解陌生代码的宝贵工具,而且还可以帮助我们确保自己的代码遵循行业标准和惯例,通过要求它更正我们的代码以符合 Pep-8 约定,或者甚至为我们的编码风格创建自定义约定,我们可以避免在合并来自不同存储库或团队的代码时进行昂贵且耗时的重构。

这有助于简化协作流程并提高效率,总的来说,ChatGPT 是一个多功能工具,可以提高我们代码库的质量和可维护性。

如果我们让ChatGPT用Pep-8标准写之前的代码,它会直接给我们重构后的代码。

你能用 Pep8 标准重写下面的代码吗 ?

图片

屏幕截图 ChatGPT 聊天,ChatGPT 按照 Pep8 标准提供我们的代码

总结

我希望读完本文后,您会意识到 ChatGPT 可以帮助我们提高工作效率并创造更高质量的输出。我知道很容易陷入认为人工智能最终会接管我们工作的陷阱,但正确的人工智能可以成为一种强大的资产,想办法让它可以为我们所用。

然而,重要的是要记住,批判性思维在与 AI 合作时仍然是关键,就像在与我们的人类同事合作时一样。

因此,在您急于实施 AI 生成的响应之前,请确保先花时间审查和评估它们。相信我,这最终是值得的!

如果 ChatGPT 的其他一些优秀功能让您感到惊讶,请您在留言区告诉我,让我们一起努力让人工智能为我们服务。

以上是ChatGPT 的五大功能可以帮助你提高代码质量的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

ChatGPT 现在允许免费用户使用 DALL-E 3 生成每日限制的图像 ChatGPT 现在允许免费用户使用 DALL-E 3 生成每日限制的图像 Aug 09, 2024 pm 09:37 PM

DALL-E 3 于 2023 年 9 月正式推出,是比其前身大幅改进的型号。它被认为是迄今为止最好的人工智能图像生成器之一,能够创建具有复杂细节的图像。然而,在推出时,它不包括

字节跳动剪映推出 SVIP 超级会员:连续包年 499 元,提供多种 AI 功能 字节跳动剪映推出 SVIP 超级会员:连续包年 499 元,提供多种 AI 功能 Jun 28, 2024 am 03:51 AM

本站6月27日消息,剪映是由字节跳动旗下脸萌科技开发的一款视频剪辑软件,依托于抖音平台且基本面向该平台用户制作短视频内容,并兼容iOS、安卓、Windows、MacOS等操作系统。剪映官方宣布会员体系升级,推出全新SVIP,包含多种AI黑科技,例如智能翻译、智能划重点、智能包装、数字人合成等。价格方面,剪映SVIP月费79元,年费599元(本站注:折合每月49.9元),连续包月则为59元每月,连续包年为499元每年(折合每月41.6元)。此外,剪映官方还表示,为提升用户体验,向已订阅了原版VIP

微调真的能让LLM学到新东西吗:引入新知识可能让模型产生更多的幻觉 微调真的能让LLM学到新东西吗:引入新知识可能让模型产生更多的幻觉 Jun 11, 2024 pm 03:57 PM

大型语言模型(LLM)是在巨大的文本数据库上训练的,在那里它们获得了大量的实际知识。这些知识嵌入到它们的参数中,然后可以在需要时使用。这些模型的知识在训练结束时被“具体化”。在预训练结束时,模型实际上停止学习。对模型进行对齐或进行指令调优,让模型学习如何充分利用这些知识,以及如何更自然地响应用户的问题。但是有时模型知识是不够的,尽管模型可以通过RAG访问外部内容,但通过微调使用模型适应新的领域被认为是有益的。这种微调是使用人工标注者或其他llm创建的输入进行的,模型会遇到额外的实际知识并将其整合

为大模型提供全新科学复杂问答基准与测评体系,UNSW、阿贡、芝加哥大学等多家机构联合推出SciQAG框架 为大模型提供全新科学复杂问答基准与测评体系,UNSW、阿贡、芝加哥大学等多家机构联合推出SciQAG框架 Jul 25, 2024 am 06:42 AM

编辑|ScienceAI问答(QA)数据集在推动自然语言处理(NLP)研究发挥着至关重要的作用。高质量QA数据集不仅可以用于微调模型,也可以有效评估大语言模型(LLM)的能力,尤其是针对科学知识的理解和推理能力。尽管当前已有许多科学QA数据集,涵盖了医学、化学、生物等领域,但这些数据集仍存在一些不足。其一,数据形式较为单一,大多数为多项选择题(multiple-choicequestions),它们易于进行评估,但限制了模型的答案选择范围,无法充分测试模型的科学问题解答能力。相比之下,开放式问答

SK 海力士 8 月 6 日将展示 AI 相关新品:12 层 HBM3E、321-high NAND 等 SK 海力士 8 月 6 日将展示 AI 相关新品:12 层 HBM3E、321-high NAND 等 Aug 01, 2024 pm 09:40 PM

本站8月1日消息,SK海力士今天(8月1日)发布博文,宣布将出席8月6日至8日,在美国加利福尼亚州圣克拉拉举行的全球半导体存储器峰会FMS2024,展示诸多新一代产品。未来存储器和存储峰会(FutureMemoryandStorage)简介前身是主要面向NAND供应商的闪存峰会(FlashMemorySummit),在人工智能技术日益受到关注的背景下,今年重新命名为未来存储器和存储峰会(FutureMemoryandStorage),以邀请DRAM和存储供应商等更多参与者。新产品SK海力士去年在

SOTA性能,厦大多模态蛋白质-配体亲和力预测AI方法,首次结合分子表面信息 SOTA性能,厦大多模态蛋白质-配体亲和力预测AI方法,首次结合分子表面信息 Jul 17, 2024 pm 06:37 PM

编辑|KX在药物研发领域,准确有效地预测蛋白质与配体的结合亲和力对于药物筛选和优化至关重要。然而,目前的研究没有考虑到分子表面信息在蛋白质-配体相互作用中的重要作用。基于此,来自厦门大学的研究人员提出了一种新颖的多模态特征提取(MFE)框架,该框架首次结合了蛋白质表面、3D结构和序列的信息,并使用交叉注意机制进行不同模态之间的特征对齐。实验结果表明,该方法在预测蛋白质-配体结合亲和力方面取得了最先进的性能。此外,消融研究证明了该框架内蛋白质表面信息和多模态特征对齐的有效性和必要性。相关研究以「S

布局 AI 等市场,格芯收购泰戈尔科技氮化镓技术和相关团队 布局 AI 等市场,格芯收购泰戈尔科技氮化镓技术和相关团队 Jul 15, 2024 pm 12:21 PM

本站7月5日消息,格芯(GlobalFoundries)于今年7月1日发布新闻稿,宣布收购泰戈尔科技(TagoreTechnology)的功率氮化镓(GaN)技术及知识产权组合,希望在汽车、物联网和人工智能数据中心应用领域探索更高的效率和更好的性能。随着生成式人工智能(GenerativeAI)等技术在数字世界的不断发展,氮化镓(GaN)已成为可持续高效电源管理(尤其是在数据中心)的关键解决方案。本站援引官方公告内容,在本次收购过程中,泰戈尔科技公司工程师团队将加入格芯,进一步开发氮化镓技术。G

VSCode 前端开发新纪元:12款 AI 代码助手大推荐 VSCode 前端开发新纪元:12款 AI 代码助手大推荐 Jun 11, 2024 pm 07:47 PM

在前端开发的世界里,VSCode以其强大的功能和丰富的插件生态,成为了无数开发者的首选工具。而近年来,随着人工智能技术的飞速发展,VSCode上的AI代码助手也如雨后春笋般涌现,极大地提升了开发者的编码效率。VSCode上的AI代码助手,如雨后春笋般涌现,极大地提升了开发者的编码效率。它利用人工智能技术,能够智能地分析代码,提供精准的代码补全、自动纠错、语法检查等功能,极大地减少了开发者在编码过程中的错误和繁琐的手工工作。有今天,就为大家推荐12款VSCode前端开发AI代码助手,助你在编程之路

See all articles