首頁 > 軟體

5個ChatGPT功能幫助你提升日常編碼效率

2023-02-20 06:00:56

ChatGPT 的出現,徹底改變了開發程式碼的方式。但是目前為止,大多數軟體開發人員和資料專業人員仍然沒有習慣使用 ChatGPT 來改進和簡化自己的工作。

這就是為什麼我在這裡概述了5個不同的功能,以提高日常工作的速度和質量。

下面讓我們一起探索如何在日常工作中使用它們

1.生成編碼框架

ChatGPT 是我們從頭開始構建新專案的祕密武器。只需幾個提示,它就可以生成我們所需的程式碼框架,以及所選擇的技術、框架和版本。它不僅每次為我們節省了至少一個小時左右的工作時間,而且有助於保持檔案(或團隊的檔案)的有效組織和更新,這就像團隊中多了一雙手,一雙勤勞的手!

例如,我們想使用一些外部API,可以請 ChatGPT 為我們起草一個初始程式碼結構。

問:Generate boiler plate code that integrates an extern API using Python.

或者我們甚至可以要求這個框架使用 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[@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 的幫助下,這個過程變得簡單多了。

我們現在可以直接向它徵求專家級別的意見,以確定哪種選項或庫最適合我們的程式碼開發。這節省了我們在決策過程中的時間和精力,並確保使用了最佳的工具。

讓我們想象一下,我想使用地理空間資料,但我不確定是否應該使用 Geostandard 或 Plotly。我們可以要求 ChatGPT 進行比較,它立即回答了兩個庫之間的主要區別。

如果現在我們想抓取網站,就可以問什麼是最好的庫。ChatGPT 會用 Python 中最流行的 web 抓取庫來回答。

我們甚至可以詢問想要抓取的網站的最佳方式是什麼——儘管 ChatGPT 很可能會警告你這將違反該網站的內容政策——所以要小心。

問:What’s the best option to scrape a social network?

3.理解程式碼

在日常工作當中,我們都在努力理解一個不是由我們建立的程式碼庫。瀏覽一個複雜且組織不良的程式碼可能是一項令人崩潰的任務。

但是,通過 ChatGPT,理解新的程式碼庫變得容易多了。我現在可以簡單地要求它解釋程式碼的功能,不需要再浪費寶貴的時間和精力來破譯寫得不好的程式碼。

讓我們想象一下,當我們正在嘗試抓取 Linkedin,此時在網際網路上發現了一個樣例程式碼,該程式碼應該可以捲動 Linkedin 招聘網站。

問:What does the following code do? [insert code here]

#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 立即對上面的程式碼進行了非常詳細的解釋。我們甚至可以要求在程式碼的給定部分提供更多的細節。

4.向程式碼新增註釋

ChatGPT 還可以幫助我們提高自己程式碼的質量和可維護性。通過要求它逐行新增註釋,使其他人更容易理解和使用我們的程式碼。

ChatGPT 可以顯著提高可讀性、可維護性以及與他人的共同作業。

讓我們假設下面的程式碼根本沒有註釋。我們可以要求 ChaGPT 直接向其新增註釋。

問:Add comments to the following code [insert code here]

# 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 標準編寫以前的程式碼,它將直接為我們提供重構的程式碼。

問:Can you rewrite the following code using Pep8 standard [Insert code here]

好了,這就是今天分享的5個 ChatGPT 功能,對於提升日常工作效率,還是非常棒的,要不要嘗試一下呢~

到此這篇關於5個ChatGPT功能幫助你提升日常編碼效率的文章就介紹到這了,更多相關ChatGPT功能內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com