5个ChatGPT功能,提升您的日常工作

如何使用它来提高您的代码质量

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

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

您可以在日常工作中使用它们。让我们一起发现如何使用它们 👇🏻

⚠️ 警告:您不应该使用关键代码或信息与 ChatGPT。

#1. 生成您的编码框架

ChatGPT 是我从头开始构建新项目的秘密武器。只需几个提示,它就可以生成我需要的代码框架,包括我选择的技术、框架和版本。 它不仅每次节省我至少一小时的工作时间,而且还有助于保持我的文档 — 或团队的文档 — 有组织、更新。就像有一个额外的团队成员一样!

例如,想象一下我想使用一些外部的 API。我可以让 ChatGPT 为我起草一个初始的代码结构。

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

ChatGPT 立即回答:

或者,我甚至可以要求使用 Selenium 爬取 LinkedIn 的框架,ChatGPT 给我以下输出。

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

# 初始化 web 驱动程序
driver = webdriver.Firefox()

# 转到 LinkedIn
driver.get("https://www.linkedin.com/")

# 查找电子邮件和密码输入字段
email = driver.find_element_by_id("username")
password = driver.find_element_by_id("password")

# 输入您的凭据
email.send_keys("YOUR_EMAIL")
password.send_keys("YOUR_PASSWORD")

# 单击登录按钮
driver.find_element_by_xpath("//button[@type='submit']").click()

# 等待页面加载
time.sleep(5)

# 转到所需用户的资料
driver.get("https://www.linkedin.com/in/USER_PROFILE_NAME")

# 从页面中提取您想要的信息
name = driver.find_element_by_xpath("//span[@class='inline t-24 t-black t-normal break-words']").text
location = driver.find_element_by_xpath("//span[@class='t-16 t-black t-normal inline-block']").text

print(name)
print(location)

# 关闭浏览器
driver.quit()

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

#2. 研究和比较

决定如何实现某些东西可能很困难,尤其是当有多个选项可供选择时。我的常用方法是为每种方法创建基本的概念证明,然后进行比较。但是,借助 ChatGPT 的帮助,这个过程变得更加容易了。

现在,我可以直接询问它对我的代码开发哪种选项或库最好的专业意见。 这为我节省了决策过程中的时间和精力,并确保我使用最佳的工具。

假设我想使用地理空间数据,但是我不确定是否应该使用 Geopandas 还是 Plotly。我可以要求 ChatGPT 来为我比较 — 包括类型 😉— 它立即回答了这两个库之间的主要区别。

现在,如果我想爬取网站,我可以询问最好的库是什么。ChatGPT 会回答 Python 中最受欢迎的网络爬虫库。

您甚至可以询问最适合爬取您想要的网站的选项 — 尽管 ChatGPT 很可能会警告您这将违反该网站的内容政策 — 所以要小心。

爬取社交网络的最佳选项是什么?

#3. 理解代码

我们都曾经历过苦苦挣扎去理解不是我们写的代码库。浏览一个复杂和组织混乱的代码,又称为意大利面条代码,是一项令人沮丧和耗时的任务。

但是,有了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,您就会发现它可以带来的所有美妙事物。

#4. 添加注释到我们的代码

ChatGPT还可以帮助我们提高自己的代码质量和可维护性。通过要求逐行添加注释,我们可以确保我们的代码在交付之前得到适当的文档记录。这消除了未注释的代码的需要,并使其他人更容易理解和使用我们的代码。

ChatGPT可以显著提高可读性、可维护性和与他人的协作。

让我们想象一下,先前的代码没有任何注释。我们只需要求ChaGPT直接添加注释即可。

为以下代码添加注释[插入代码]

#找到网站提供的工作数量
jobs_num = driver.find_element(By.CSS_SELECTOR,"h1>span").get_attribute("innerText")

#检查工作数量是否包含“,”,如果是,则将其转换为数字* 1000
if len(jobs_num.split(',')) > 1:
    jobs_num = int(jobs_num.split(',')[0])*1000
else:
    jobs_num = int(jobs_num)

#将jobs_num转换为整数
jobs_num = int(jobs_num)

#将要爬取的工作数量设置为1000;
jobs_num = 1000;

#初始化计数器变量以滚动浏览工作
i = 2

#启动while循环以滚动浏览工作
while i <= int(jobs_num/2)+1:
    #滚动到页面底部
    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:
        #尝试找到“加载更多结果”按钮并单击它
        infinite_scroller_button = driver.find_element(By.XPATH, ".//button[@aria-label='Load more results']")
        infinite_scroller_button.click()
        #睡眠0.1秒
        time.sleep(0.1)
    except:
        #如果按钮不存在,则睡眠0.1秒并继续滚动
        time.sleep(0.1)
        pass

令人印象深刻,对吧?不再是没有注释的代码了!:D

#5. 使用一些风格重写我们的代码

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

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

如果我们请求 ChatGPT 使用 Pep-8 标准编写之前的代码,它将直接给我们重构后的代码。

你能使用 Pep8 标准重写以下代码吗?[插入代码]

主要结论

我希望在阅读本文后,你意识到 ChatGPT 可以帮助我们更加高效地产出更高质量的成果。我知道我们很容易陷入认为人工智能最终可能会接管我们的工作的陷阱中,但是正确的人工智能可以成为我们的强大资产。

然而,在使用人工智能时,仍然需要记住批判性思维,就像与我们的人类同事合作时一样。

所以,在您匆忙实施 AI 生成的响应之前,请确保花时间先进行审查和评估。相信我,最终这是值得的!

如果 ChatGPT 让您惊喜地发现其他好的功能,请在评论中告诉我!:D

Josep Ferrer 是一位来自巴塞罗那的分析工程师。他毕业于物理工程专业,目前在应用于人类移动性的数据科学领域工作。他是一位兼职的内容创作者,专注于数据科学和技术。您可以在 LinkedIn、Twitter 或小猪AI 上联系他。

原文。在获得许可后转载。