Python-和-ChatGPT-氛围编程入门

Python 和 ChatGPT 氛围编程入门

原文:USING CHATGPT: MADE EASY

译者:飞龙

协议:CC BY-NC-SA 4.0

前言

在本书中,我们带您进行一次有趣、实用的 Vibe 编码速成课程,使用 Python 和 ChatGPT。通过 Vibe 编码,您将使用 ChatGPT 和 Python 为您构建应用程序,而无需进行复杂的编码,同时您专注于大的概念。

在本书的过程中,我们将介绍如何在几分钟内构建功能性的个人应用程序,包括:- 下载 YouTube 内容 - 通过 API/网络爬虫获取比特币价格 - 自动化网络浏览 - 文本转语音 - 使用 Elevenlabs API 生成声音克隆 - 自动化电子邮件

  • 计算机视觉

  • 创建和托管网站 - 创建 Flappy Bird 游戏 - 使用 OpenAI API 进行语音到文本和摘要 - 创建 Telegram 机器人 - 创建 RAG - 与 PDF 应用程序聊天 获取书籍更新

要接收书籍的更新版本,请通过发送邮件至 support@i-ducate.com 订阅我们的邮件列表。我试图更新我的书籍以使用最新的软件、库版本,并将更新本书中的代码/内容。因此,请订阅我的列表以接收更新副本!

伴侣视频课程 通过发送邮件至 support@i-ducate.com 联系我以获取本书的伴侣视频。一些示例在视频中展示得更好。有关本书的评论或问题也可以发送至同一邮箱。

第一章 - 简介

欢迎加入 Python 和 ChatGPT 的 Vibe 编码入门!

这本书的目标是帮助你学习如何创建应用程序,而无需精通复杂的编码。你将学习如何使用 Python 构建个人使用的真实应用程序,甚至更多。从提示到完成,你将在几分钟内看到结果。

与传统的编程书籍不同,这本书不需要你深入研究代码语法或花费数小时来完成。课程设置灵活,允许你从任何地方开始或遵循指导的学习曲线。

书的第一部分专注于在单个文件中运行的简单代码。第二部分探讨了 API 的使用。最后,书中包含了一些示例,结合库和 API 来展示你可以创建的项目类型。

这本书的目标是向你展示如何使用和集成 Python 的库和 API。它将为你提供一套最有用和最有趣的函数工具包,并说明如何将想法转化为实际应用。

一旦你了解了如何使用 Python 并将库和 API 集成到你的工作流程中,你将能够创建各种程序来提高你的效率——即使是单次使用。

Vibe 编码简介

在传统的编码中,程序员制定计划,编写代码,运行它,并在过程中纠正错误。在 Vibe 编码中,你不会自己编写任何代码。相反,你要求 LLM 为你完成。你运行结果而不阅读代码,如果出现错误或你想调整输出,你只需告诉 LLM 按你的要求进行调整。

那么,Vibe 编码是从哪里来的?这个术语是由 OpenAI 的联合创始人 Andrej Karpathy 提出的。它是关于用简单的英语向 LLM 提出要求来创建某物,而不是管理代码本身:

图片

(来源: https://medium.com/@utsavmadaan823/the-vibe-coding-revolution-hype-pitfalls-how-to-ride-the-wave-️-a5e9b4a4185e

要有效地完成这项任务,你需要具备基本编程概念的最小可行知识,以便解锁这项技能。

Vibe 编码是“糟糕”的编码吗?

Vibe 编码并不是关于编写完美的代码。它是一种拥抱实用的“完成任务”的方法,尤其是在构建通常不需要与商业软件相同标准的个人应用程序时。你正在为自己编写代码,增加你的技能栈,并将其与你的其他技能相结合。

为什么 Vibe 编码是一个好的开始

Vibe 编码的学习曲线比传统的编程课程要平缓得多,实验想法、探索库和 API 很有趣,并为构建软件和应用程序提供了一种新颖实用的方法。你可以为自己创建它们,无论是为了娱乐、工作还是好奇心。你可以创建的东西太多了!

那么,如何感受代码的魅力?

你将从询问一个 LLM 开始——我们将使用 ChatGPT。简单来说

  1. 提示你想要的 app

  2. 复制并粘贴它生成的代码。

  3. 只需运行代码(无需阅读)。

  4. 如果有错误或需要更改,复制粘贴错误或从 LLM 请求调整。

  5. 重复。

使用 Python

我们将在本书中使用 Python。Python 是一种读起来有点像英语但有自己的语法的编程语言。我们选择 Python 是因为 LLMs 对其进行了很好的训练。任何语言的编程基础经验都将很有用,但您不需要深入学习 Python。

您需要在您的机器上安装 Python。它可能已经安装了;如果没有,可以免费从 python.org 下载。网上有很多教程,或者您可以要求 ChatGPT 引导您完成设置。

要编写和运行 Python 程序,您需要一个代码编辑器。我推荐 VS Code,这是一个免费的 Mac 和 Windows 代码编辑器,可以从 code.visualstudio.com 下载。在 VS Code 中,您将使用终端窗口——屏幕底部的简单界面来运行您的代码、复制粘贴错误和查看结果。

Python 库

Python 库是免费的功能集合,可以为您的程序添加功能。有数千个用于数据库、数学、图形、计算机视觉等库。每个库通常都需要您使用以下方式在您的机器上安装它:

pip install [库名称]

并在您的代码中使用它们:

import [库名称]

我们将在稍后探索许多此类示例。

第二章 - 使用 Python 库进行简单项目

我们将通过简单的单函数项目来探索基本的编程概念和应用程序,这些项目适合在一个文件中。代码简短,不需要太多组织。

第一个典型的编程项目是“Hello World!”这是一个简单的程序,显示“Hello World!”

让我们去 chatgpt.com 并说,“创建一个 Python hello world 程序”:

这里是输出结果!image_rsrc115.jpg

我们不需要阅读它——只需复制它。然后在 VSCode 中创建一个新的 Python 文件:

并粘贴代码:

然后点击右上角的三角形(运行 Python 文件):

我们需要保存它。让我们称它为"hello.py":

您可以看到底部出现了一个终端窗口,显示“Hello World”:

下载 YouTube 内容

我们接下来将创建一个程序,从 YouTube 链接下载视频。让我们去 ChatGPT 并提示它:“创建一个可以从 YouTube 链接下载视频的 Python 程序”:

我们可以在响应中看到,我们可以使用 pytube 库下载 YouTube 视频。让我们在 VSCode 终端中运行 pytube 来安装它:

pip install pytube

然后我们按照 pytube 使用说明的其余部分进行操作:

我们实际上不需要阅读代码。我们只需将代码复制粘贴到 VSCode 中的新 Python 文件中:

让我们运行它。我将称它为 youtube.py。现在当我运行它时,我得到一个错误消息,如下所示:

我可以简单地复制整个错误消息并将其粘贴到 ChatGPT 中:

我认为问题是因为我正在使用 Python3:

如果我运行:

pip3 install pytube

再次运行应用程序,程序运行!

它要求我“输入 YouTube 视频 URL:”

所以就给它一个随机的视频(先尝试选择一个小视频),我又得到了另一个错误:

再次,将错误复制粘贴到 ChatGPT

我又得到了另一个错误。尝试了几次之后,我得到了相同的错误重复出现。

现在,ChatGPT 提供了一个替代库:

它建议使用 yt-dlp。所以我们来做:

pip3 install yt-dlp

然后将整个代码复制粘贴到替换 youtube.py,我得到了另一个错误:

再次,将错误复制粘贴到 ChatGPT,我得到了以下解决方案:

我将其复制粘贴到 VSCode 中并运行:

这次,程序成功运行并下载了视频(可能是与 youtube.py 相同的文件夹)!

现在,你可能会遇到来自你的 LLM 的不同错误消息或建议,但那没关系。这正是 vibe 编码的精髓所在,我们只是提示 LLM 运行它,如果遇到任何错误,就将其复制粘贴回 LLM 并重复。

通过 API 获取比特币价格

你可以使用程序从 API 中检索数据。例如,假设我们想获取比特币的最新价格。让我们提示“创建一个 Python 程序,获取比特币的最新价格”。

程序从 coingecko.com 的 API 中检索最新的比特币价格。

所以我复制并粘贴了代码。在运行之前,我用以下方式安装 requests:

pip3 install requests

现在,让我们运行它:

我得到了最新的比特币价格!

通过网络抓取获取比特币价格

假设我们不想使用 API(可能我们不想支付 API 费用或者没有可用的 API),我们可以提示“创建一个 Python 程序,通过从网站抓取来获取比特币的最新价格”。

ChatGPT 建议使用一个名为 BeautifulSoup 的库,该库用于解析 HTML 代码。让我们复制粘贴此代码,安装库并尝试一下:

很遗憾,价格未找到。似乎我们需要提供更多 HTML 结构的详细信息,以便我们的程序知道从哪里收集价格。

我们可以查看 coinmarketcap.com/currencies/bitcoin/:

我们在左侧清楚地显示了比特币价格。如果检查比特币价格:

我们可以看到包含价格的 HTML 元素:

如果你是一位经验丰富的开发者,你可能会检查代码的路径,但我们不会这么做。

而不是,我们将复制该元素:

然后将它粘贴到 ChatGPT:

ChatGPT 确定价格存储在 HTML 结构中的 span 标签内,现在它正在修改代码:

图片

我们然后复制粘贴代码,运行它,我们得到当前的比特币价格:

图片

网络浏览自动化

让我们创建一个程序,为我们访问网站。让我们创建一个 Python 程序,访问维基百科并输入用户输入的搜索词:

图片

然后我们复制粘贴代码:

图片

让我们运行它。让我们输入一个搜索词 例如 “vibe coding”:

图片

图片

搜索词已输入,我们已经导航到维基百科页面!

文本到语音

我们将使用 ChatGPT 将文本转换为音频文件,使用文本到语音技术。让我们提示它:

图片

它给出了:

图片

如果我们查看代码,我们可以看到它导入了 Google Text-to-Speech 库,from gtts import gTTS。它从用户那里接收文本,然后调用一个函数来创建并保存为 MP3 格式的音频文件。

首先,运行:pip install gtts

现在,运行文件并输入一些简单的内容,例如,“你好,你怎么样?”

图片

音频文件将被保存为类似 output.mp3 的文件:

图片

如果播放输出,它应该播放“你好。你怎么样?”。尝试输入更长的文本,它也应该运行良好。

改变声音

我们能否将文本转换为语音的语音改变?让我们尝试提示:“能否改变语音?”

图片

它告诉我们使用 pyttsx3 库来处理不同的语言和口音,并提供了更新的脚本:

图片

让我们复制粘贴代码并运行它:

图片

我们正在看到一个声音列表。如果我们选择一个声音并提供文本,它就会工作!现在,声音听起来可能相当机械。如果您想要更高品质的声音或克隆名人的声音,我们可以使用 Elevenlabs API,我们将在下一节中探讨。

使用 Elevenlabs API 生成声音克隆

要生成一个声音克隆,有多种服务可以实现。其中最受欢迎的是由 ElevenLabs 公司提供的服务。您需要首先向他们提供一个声音样本。

语音克隆服务是一项付费服务。最受欢迎的计划每月 11 美元:

图片

让我们提示,“创建一个使用 elevenlabs API 克隆声音并使用用户输入文本生成音频文件的 Python 程序”:

图片

在 ElevenLabs 仪表板中,获取您的 API 密钥:

图片

接下来,在 ElevenLabs 中,‘添加新声音’:

图片

您可以选择克隆现有的声音或从提示中设计新的声音:

图片

选择任一选项。请注意,您必须付费才能克隆声音。声音创建后,复制声音 ID:

图片

现在我们有了 API 密钥和声音 ID,将其粘贴到 ChatGPT 为我们生成的代码中:

图片

复制粘贴到 VS Code 并运行:

图片

你应该会听到你输入文本的语音音频文件(例如 audio.mp3)!

邮件自动化

有时我们想要发送电子邮件而不需要逐个手动发送。让我们请求帮助创建一些轻量级的电子邮件自动化。让我们提示 ChatGPT:

“创建一个 Python 程序,向用户提供的一串电子邮件发送邮件。询问用户主题和正文。通过我的个人 Gmail 发送邮件”

ChatGPT 响应:

图片

我选择了基本的 SMTP 方法(需要应用程序密码)。ChatGPT 给我提供了以下代码:

图片

你需要在代码中输入你的 Gmail 电子邮件地址和应用程序密码。请注意,这不是你的原始 Gmail 密码,你不应该为了安全设置而提供。相反,这是一个更安全的特定于应用程序的应用程序密码。

要获取应用程序密码,请在 Google 上搜索“Google App Password”,你应该会被带到“应用程序密码”网站:

图片

输入一个名称 例如 ‘python email sender’ 并生成你的应用程序密码:

图片

修改代码以包含你自己的电子邮件和应用程序密码:

图片

现在,运行你的应用。它应该提示你输入收件人电子邮件、主题和电子邮件正文。

图片

所有电子邮件都应该成功发送。例如,我收到了指定主题标题和正文的电子邮件:

图片

邮件发送成功了!你可以进一步改进应用,例如从文本文件中获取电子邮件列表,而不是在终端中手动输入。

计算机视觉

我们可以用计算机视觉做很多事情。让我们创建一个可以识别图像的程序。我们可以提示:

图片

继续安装依赖项,并在 Google 上搜索“Download imagenet_classes.txt”以获取文件并将其粘贴到 VS Code 中。

图片

ChatGPT 使用了几个高级计算机视觉库进行图像识别,但我们不需要了解细节。让我们直接将代码复制粘贴到 VS Code 中并运行它。

你可能会遇到以下错误:

图片

如 ChatGPT 所建议,尝试通过在下载模型时添加以下两行来禁用 SSL 验证:

图片

尝试运行程序并给出要识别的图像的路径。在我的情况下,我传递了这张图像:

图片图片

我们可以看到程序将图像识别为雏菊!

现在,如果我可以,并给出以下图像:

图片

它实际上错误地将其识别为海星:

图片

这可能是因为剥落的皮肤可能被误认为是海星的一条腿。因此,我们也希望程序告诉我们分配给图像的置信度百分比。所以让我们提示:

图片

复制更新的代码并再次运行。它显示它以 46.16% 的置信度将其识别为海星!图片

让我们再次尝试,但这次使用一个更清晰的香蕉图片:

图片

而这次,我们得到了一个更有信心的结果!

图片

第三章 - 创建和托管网站

您可以使用 ChatGPT 创建简单或更复杂的网站。让我们从一个简单的网站开始:

“创建一个带有中心标志的个人页面 Python 程序,并链接到我的 YouTube、Twitter 和 Gumroad 页面。设计应该是现代和简约的。”

图片

ChatGPT 建议使用 Flask 来渲染网站。我们必须创建一个包含“index.html”的“templates”文件夹,其代码如下:图片

确保您将 YouTube、Twitter 和 Gumroad 链接替换为您自己的:…

<body>
posted @ 2026-04-03 22:08  布客飞龙II  阅读(15)  评论(0)    收藏  举报