翻译:陈超
校对:赵茹萱

本文约3200字,建议阅读8分钟
本文介绍了ChatGPT提高日常工作的五个特点。

ChatGPT已经完全改变了代码开发模式。然而,大多数软件开发者和数据专家们仍然不使用ChatGPT来完善——并简化他们的工作。

这就是我们在这里列出提升日常工作效率和质量的5个不同的特点的原因。

让我们一起来看看在日常工作中如何使用他们。

警告:不要用ChatGPT处理关键代码或信息。

1. 生成代码架构

当需要从零开始建立新工程的时候,ChatGPT就是我的秘密武器。只需要几个提示,它就能用我选中的技术、框架和版本生成我需要的代码架构。它不仅每次为我节省了至少一个小时左右的工作时间,但是它也帮助你保持文档——或者团队的文档、组织性和更新性,就像团队里多了一只手!

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

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

ChatGPT立即响应:

截图ChatGPT聊天。ChatGPT给了我一个代码框架

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

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


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


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


# 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/in/USER_PROFILE_NAME")


# Extract the information you want from the page
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)


# close the browser
driver.quit()

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

2. 研究和比较

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

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

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

截图ChatGPT聊天。ChatGPT向我解释了地质故事和情节之间的区别

如果现在我想要抓取一个网站,我可以问哪个库来做这个最好。ChatGPT与Python中最流行的网络检索库相匹配。

截图ChatGPT聊天。ChatGPT介绍了最流行的抓取网站

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

从社交网络中获取利益的最佳选择是什么?

截图ChatGPT聊天。ChatGPT解释了抓取社交网络的最佳选择

3. 理解代码

我们都有过这样的经历,努力理解一个不是由我们自己创建的代码库。浏览一段复杂且无组织的代码——也称为套管程序,可能是一项令人沮丧且耗时的任务。

但是,有了ChatGPT,理解一个新的代码库就变得容易多了。我现在可以简单地要求它解释代码的功能,并立即理解它,不用再浪费宝贵的时间和精力去破译写得很差的代码。

下面的代码做什么?

#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解释了我不理解的代码

4. 向代码中添加注释

ChatGPT还可以帮助我们提高代码的质量和可维护性。通过要求它一行一行地添加注释,我们可以确保我们的代码在发布之前被正确地记录。这消除了对无注释代码的需要,并使其他人更容易理解和使用我们的代码。

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

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

向以下代码添加注释:

# 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

令人印象深刻,对吧?没有注释的代码!

5. 使用某种风格重写代码

ChatGPT不仅是理解不熟悉的代码的有价值的工具,而且还可以帮助我们确保自己的代码遵循行业标准和惯例。通过要求它纠正我们的代码以符合Pep-8约定——或者甚至为我们的编码风格创建一个自定义规范,我们可以避免在合并来自不同repo或团队的代码时进行昂贵且耗时的重构。

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

当我们要求ChatGPT使用Pep-8标准编写之前的代码时,它会直接给我们重构代码。

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

截图ChatGPT聊天。ChatGPT给我们的代码遵循Pep-8标准

主要结论

我希望在阅读这篇文章之后,您能够意识到ChatGPT可以帮助我们提高工作效率,并创建更高质量的输出。我知道人们很容易陷入思维陷阱,认为人工智能最终可能会取代我们的工作,但正确的人工智能可以成为一种强大的资产,可以为我们所用。

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

因此,在你急于实现人工智能生成响应之前,请确保先花时间审查和评估它们。相信我,到最后都是值得的!

如果ChatGPT有其他让你惊喜的好特性,请告诉我。我会在评论里读到你!

数据总是有更好的想法——相信它。

原文标题:

5 ChatGPT features to boost your daily work

原文链接:

https://medium/geekculture/5-chatgpt-features-to-boost-your-daily-work-404478fd70ca

编辑:王菁

校对:王欣

译者简介

陈超,北京大学应用心理硕士,数据分析爱好者。本科曾混迹于计算机专业,后又在心理学的道路上不懈求索。在学习过程中越来越发现数据分析的应用范围之广,希望通过所学输出一些有意义的工作,很开心加入数据派大家庭,保持谦逊,保持渴望。

翻译组招募信息

工作内容:需要一颗细致的心,将选取好的外文文章翻译成流畅的中文。如果你是数据科学/统计学/计算机类的留学生,或在海外从事相关工作,或对自己外语水平有信心的朋友欢迎加入翻译小组。

你能得到:定期的翻译培训提高志愿者的翻译水平,提高对于数据科学前沿的认知,海外的朋友可以和国内技术应用发展保持联系,THU数据派产学研的背景为志愿者带来好的发展机遇。

其他福利:来自于名企的数据科学工作者,北大清华以及海外等名校学生他们都将成为你在翻译小组的伙伴。

点击文末“阅读原文”加入数据派团队~

转载须知

如需转载,请在开篇显著位置注明作者和出处(转自:数据派ID:DatapiTHU),并在文章结尾放置数据派醒目二维码。有原创标识文章,请发送【文章名称-待授权公众号名称及ID】至联系邮箱,申请白名单授权并按要求编辑。

发布后请将链接反馈至联系邮箱(见下方)。未经许可的转载以及改编者,我们将依法追究其法律责任。

点击“阅读原文”拥抱组织

更多推荐

独家 | ChatGPT提高你日常工作的五个特点以及如何使用它来提高代码质量