ホームページ  >  記事  >  テクノロジー周辺機器  >  ChatGPT の 5 つの主要な機能はコード品質の向上に役立ちます

ChatGPT の 5 つの主要な機能はコード品質の向上に役立ちます

WBOY
WBOY転載
2023-04-14 14:58:151446ブラウズ

ChatGPT は現在、コード開発方法に革命をもたらしていますが、ほとんどのソフトウェア開発者やデータ専門家は、作業の改善と簡素化に ChatGPT をまだ使用していません。

だからこそ、私はここで、日常業務のスピードと品質を向上させるための 5 つの異なる機能について概要を説明したいと思います。

日常の仕事で使用できます。さあ、一緒に調べてみましょう。

注: ChatGPT ではキー コードや情報を決して使用しないでください。

01.プロジェクト コードを生成するためのフレームワーク

ChatGPT は、新しいプロジェクトをゼロから構築するときの秘密兵器です。いくつかのプロンプトを表示するだけで、選択したテクノロジ、フレームワーク、バージョンなど、必要なコードのスケルトンが生成されました。少なくとも 1 時間ほどの作業を節約できるだけでなく、自分のドキュメント (またはチームのドキュメント) を整理して最新の状態に保つのにも役立ちます。チームにプラグインを追加するようなものです。ハンズ!

たとえば、外部 API を使用したいとします。ChatGPT に初期コード構造のドラフトを依頼できます。

Python を使用して、外部 API を統合するための定型コードを生成します。

ChatGPT の即答:

ChatGPT の 5 つの主要な機能はコード品質の向上に役立ちます

#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 に比較を依頼することができます (型を含める)。2 つのライブラリ間の主な違いが即座に答えられます。

ChatGPT の 5 つの主要な機能はコード品質の向上に役立ちます

スクリーンショット ソース ChatGPT とチャットして、geopandas と plotly の違いを説明してくれました。

今 Web サイトをスクレイピングしたい場合は、何を質問できますか最高の図書館です。 ChatGPT は、Python で最も人気のある Web スクレイピング ライブラリを使用して回答します。

ChatGPT の 5 つの主要な機能はコード品質の向上に役立ちます

スクリーンショット ソース ChatGPT とのチャット、ChatGPT は最も人気のあるクローリング サイトについて説明します

クロールしたいサイトに最適なものを尋ねることもできます。ただし、ChatGPT はこれがサイトのコンテンツ ポリシーに違反することを警告する可能性が高いため、注意してください。

ソーシャル ネットワークをスクレイピングするための最良のオプションは何ですか?

ChatGPT の 5 つの主要な機能はコード品質の向上に役立ちます

#03. コードを理解する

誰もが経験したことがあります。私たちが作成したコードベースではないので、理解するのに苦労しています。複雑で整理整頓が不十分なコード (スパゲッティ コードとも呼ばれます) を操作するのは、イライラと時間がかかる作業になる場合があります。

しかし、ChatGPT を使用すると、新しいコード ベースを理解することがはるかに簡単になります。コードの動作を説明してもらうだけで、すぐに理解できるようになりました。貧弱なコードを解読しようとして貴重な時間とエネルギーを無駄にする必要はもうありません。

Linkedin をスクレイピングしようとして、Linkedin の求人 Web サイトを下にスクロールすることになっているランダムなコードをインターネット上で見つけたとします。

次のコードは何をしますか?

#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 の 5 つの主要な機能はコード品質の向上に役立ちます

ChatGPT チャットのスクリーンショット、ChatGPT が理解できなかったコードを説明しました

04. コードにコメントを追加します

ChatGPT は次のことができますまた、ご要望に応じてコメントを 1 行ずつ追加することで、コードがリリース前に適切に文書化されていることを確認できます。これにより、コードにコメントを追加するという要件を満たすことができ、他の人がコードを理解し、使用しやすくなります。

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 の 5 つの主要な機能はコード品質の向上に役立ちます

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

总结

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

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

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

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

以上がChatGPT の 5 つの主要な機能はコード品質の向上に役立ちますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事は51cto.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。