使用人工智能助手 Github Copilot 进行编程 02

本章涵盖了

  • 在您的系统上设置 Python、VS Code 和 Copilot
  • 引⼊ Copilot 设计流程
  • Copilot 的价值在于基本的数据处理任务

本章将帮助您在自己的计算机上开始使用 Copilot,并熟悉与其的交互方式。在设置好Copilot 后,我们将要求您尽可能跟随我们的示例进行操作。实践是最好的学习方式,我们相信您可以在本书的剩余部分与我们一同学习。

一旦您设置好 Copilot,我们将通过一个有趣的示例来展示 Copilot 在解决标准任务中的强大能力,您将看到如何与 Copilot 进行交互,并了解我们如何在不编写任何实际代码的情况下编写软件。

2.1 设置您的计算机开始学习的时间

学习如何编写软件需要你实际去编写软件,而不仅仅是阅读相关内容。如果这是一本关于如何弹吉他的书,你会一直阅读而不尝试弹吉他吗?我们认为不会。只是阅读这本书而不跟着实践并亲自尝试,就像看着一名马拉松选手完成比赛后,以为自己已经准备好去跑一场马拉松一样。我们不再使用类比了,但是说真的,在我们继续之前,你需要安装并运行你的软件。

现在最让我们担心的是,我们刚刚达到了新手最容易失败的普遍阶段,即使那些渴望学习编程的人也是如此,而我们真的希望看到你成功。现在,你可能会想,“等等,真的吗?我们才刚刚开始。”是的,这正是关键所在。在 Leo 的流行的 Coursera 课程中学习 Java 编程,你能猜到大多数新学习者离开的时候吗?是课程结束时需要实时在地球上绘制地震标记的具有挑战性的作业吗?不是的。实际上,大多数学习者离开的是热身作业,他们必须设置他们的编程环境。因此,我们理解这可能是你面临的一个障碍。我们希望通过这个不那么明显的推动,我们可以帮助你实现你购买这本书时心中的所有目标。一切都始于安装软件。

2.1.1 您编程环境中软件的概述

为了轻松设置和使用 Copilot,我们将安装适用于新手和软件工程师的软件编辑工具。您将使用的工具包括 GitHub、Copilot、Python 和 Visual Studio Code。当然,如果您已经安装了所有这些工具,请跳转到第 2.5 节。

Github 账号

GitHub 是一个行业标准的开发、维护和存储软件的工具。然而,在本书中我们不会使用GitHub。我们只是注册 GitHub 账户是因为你需要一个账户来访问 Copilot。注册 GitHub 账户是免费的,但是在撰写本文时,Copilot 是收费的。如果你是学生,他们将免除这个费用。如果你不是学生,在撰写本文时,你可以获得 30 天的免费试用。

你可能会问为什么他们要收费,这有一个很好的答案。建立 GPT3 模型是很昂贵的(想象一下成千上万台电脑运行一年来建立模型),而且 GitHub 提供模型的预测也会产生成本(许多机器接收你的输入,通过模型运行它,并生成你的输出)。如果你还没有准备好使用 Copilot,你可以在注册后大约 25 天的时间内做一个日历提醒,如果那时你还没有使用 Copilot,就取消订阅。另一方面,如果你已经成功学会了如何使用 Copilot 编写软件,并且正在工作中或者只是作为一种爱好来提高你。

Python

真的,任何编程语言都可以用于这本书,但我们选择了 Python,因为它是世界上最流行的编程语言之一Python更容易阅读、理解和编写。对于这本书,Copilot 主要生成代码,而不是你自己。然而,你会想要阅读和理解 Copilot 生成的代码,而 Python 非常适合这样做。

Visual Studio Code (VS Code)

您可以使用任何文本编辑器进行编程。然而,如果您想要一个良好的编程环境,在这里您可以编写代码,轻松地从 Copilot 获得建议,并运行您的代码,我们推荐使用 VS Code 工具。VS Code 被初学者用于学习软件,并且受到学生们的喜爱[2]。它也被全球的专业软件工程师使用,这意味着您可以在完成本书后继续使用这个环境来工作和学习。

为了使 VS Code 适用于本书您需要安装一些扩展以便使用 Python 和 Copilot 进行工作,VS Code 的一个很棒的特点是很容易安装这些扩展。

2.2 设置您的系统

这是一个四步骤的过程。为了简化本章节,我们只提供了该过程的主要步骤。然而,更详细的说明可在以下位置找到。

  • 访问 GitHub 的文档,网址为 https://docs.github.com/en/copilot/getting-started-with-ithub-copilot。
  • 这本书的网站(https://www.manning.com/books/learn-ai-assisted-python-programming)提供了设置 PC 和 macOS 系统的详细说明。由于这些工具的网站在我们编写本书后可能会发生变化,我们建议您同时使用 GitHub 链接和书籍网站。
  • 在在线书籍论坛(https://livebook.manning.com/book/learn-ai-assisted-python-programming/discussion)上,您可以寻求帮助并查看一系列常见问题的答案。

您需要完成的主要步骤如下:

  1. 设置您的 GitHub 账户并注册 Copilot
    1. 前往 https://github.com/signup 并注册一个 GitHub 账户。
    2. 进入 GitHub 的设置并启用 Copilot。这是你需要验证你是学生或者注册 30 天免费试用(在撰写本文时可用)的时候。
  2. 安装 Python
    1. 前往www.python.org/downloads/。
    2. 下载并安装最新版本的 Python(写作时为 3.11.1)。
  3. 安装 VS Code
    1. 前往https://code.visualstudio.com/download,选择适用于您操作系统的主要下载(例如,Windows 下载或 Mac下载)。
    2. 下载并安装最新版本的 VS Code。
  4. 安装以下 VS Code 扩展(详细信息请参见 https://code.visualstudio.com/docs/editor/extension-marketplace)。
    1. Python(由 Microsoft 提供)——请按照 https://code.visualstudio.com/docs/languages/python上的说明正确设置 Python 扩展(特别是选择正确的解释器)。
    2. GitHub Copilot(由 GitHub 开发)
    3. GitHub Copilot 实验室(由 GitHub 提供)——请注意,大部分书籍不需要使用Copilot 实验室,所以如果与写作时有所改变,请不要灰心。我们与 Copilot 实验室的交互也可以通过与 ChatGPT 或 Github Copilot Chat 进行交互来完成。
    4. GitHub Copilot Chat(由GitHub提供)——撰写时,GitHub Copilot Chat 尚未对所有人开放。本功能将在后面的章节中使用,但如果仍然无法使用,我们可以使用 ChatGPT 进行相同的对话。在使用此功能时,我们将提供更多详细信息。

我们知道这里的步骤很简要。如果遇到任何问题,我们鼓励您参考之前提到的资源,获取更详细的设置说明。

2.3 在 Visual Studio Code 中使⽤ Copilot

现在您已经设置好了系统,让我们来熟悉一下图2.1中显示的 VS Code 界面。(您可能需要点击左上角的资源管理器图标以获得相同的视图。)图2.1中标识了以下区域:

  • 活动栏——最左边是活动栏,我们可以在这里打开文件夹(也称为目录)或安装扩展(就像您在前一节中安装 GitHub Copilot 扩展一样)。
  • 侧边栏 - 侧边栏显示当前在活动栏中打开的内容。在图2.1中,活动栏选择了资源管理器,因此侧边栏显示当前文件夹中的文件。
  • 编辑窗格 - 这些是我们用来创建软件的主要区域。编辑窗格中的编辑器类似于其他文本编辑器,您可以使用剪贴板编写、编辑、复制和粘贴文本。然而,它的特殊之处在于它被设计成与代码配合使用。正如我们将在下一个示例中看到的,您主要将在此窗口中通过要求 Copilot 生成代码,然后测试该代码来工作。
  • 输出和终端面板-这是界面上用于查看代码输出或发生的任何错误的区域。它有问题、输出、调试控制台和终端标签。我们主要使用问题标签,可以看到代码中潜在的错误,以及终端标签,可以与 Python 进行交互并查看代码的输出。

我们在图 2.1 的右下角突出显示了 Copilot 的标志,因为如果您在前一节正确设置了 Copilot,您应该能看到这个符号(或类似的符号)。

image-20231204162845991

2.3.1 设置您的⼯作⽂件夹

在 VS Code 的左侧活动栏顶部,您会找到资源管理器作为顶部图标。点击资源管理器后,应该会显示“未打开文件夹”。点击按钮打开文件夹并选择计算机上的一个文件夹(或创建一个新文件夹 - 我们喜欢文件夹名为 fun_with_Copilot)。一旦您打开了这个文件夹,您的工作区将是您打开的文件夹,这意味着您的代码和任何数据文件(比如我们将在本章后面使用的文件)都应该在那个文件夹中。

⽂件未找到或⽂件丢失错误

如果你收到⼀个说你缺少⽂件的错误,请放⼼:这些是每个⼈都会犯的错误。在编写软件时,它们可能会⾮常恼⼈。可能是你只是没有把⽂件放在你的⼯作⽂件夹中-这种情况很常⻅。通过将⽂件复制或移动到正确的⽂件夹中&

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/427586.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从零开始训练 YOLOv8最新8.1版本教程说明(包含Mac、Windows、Linux端 )同之前的项目版本代码有区别

从零开始训练 YOLOv8 - 最新8.1版本教程说明 本文适用Windows/Linux/Mac:从零开始使用Windows/Linux/Mac训练 YOLOv8 算法项目 《芒果 YOLOv8 目标检测算法 改进》 适用于芒果专栏改进 YOLOv8 算法 文章目录 官方 YOLOv8 算法介绍改进网络代码汇总第一步 配置环境1.1 系列配…

动态IP代理与静态IP代理:详细区别与比较全析

动态代理IP和静态代理IP在跨境业务中具有非常广泛的实用性,但仍然有非常多小白选手并不清楚什么场景适合用哪一类IP,哪一中代理IP类型更适合你?其实他们各有其优点和缺点,为了使您的网络营销、社媒推广、跨境电商运营、网络抓取尽…

【排序算法】C语言实现归并排序,包括递归和迭代两个版本

文章目录 🚀前言🚀归并排序介绍及其思想🚀递归实现🚀迭代实现 🚀前言 大家好啊!阿辉接着更新排序算法,今天要讲的是归并排序,这里阿辉将讲到归并排序的递归实现和迭代实现&#xff…

DA14531平台secondary_bootloade工程修改笔记

DA14531平台secondary_bootloade工程修改笔记 1.支持在线仿真 初始时加入syscntl_load_debugger_cfg(); 表示可以重复Jlink连接调试仿真 2.支持串口烧录,和支持单线线写 utilities\secondary_bootloader\includes\bootloader.h /************** 2-wire UART support ******…

【机器学习300问】17、什么是欠拟合和过拟合?怎么解决欠拟合与过拟合?

一个问题出现了,我们首先要描述这个问题,然后分析问题出现的原因,找到原因后提出解决方案。废话不多说,直接上定义,然后通过回归和分类任务的例子来做解释。 一、什么是欠拟合和过拟合? (1&am…

2024.1.23(347.前k个高频元素)

2024.1.23(347.前k个高频元素) 思路 这道题目主要涉及到如下三块内容: 1.要统计元素出现频率 2.对频率排序 3.找出前K个高频元素 首先统计元素出现的频率,这一类的问题可以使用map来进行统计。 然后是对频率进行排序,这里我们可以使用一种…

GIS项目实战11:启动ruoyi前后端分离式框架

若依官网:http://ruoyi.vip(opens new window)演示地址:http://demo.ruoyi.vip(opens new window)代码下载:RuoYi: 🎉 基于SpringBoot的权限管理系统 易读易懂、界面简洁美观。 核心技术采用Spring、MyBatis、Shiro没有任何其它重…

【Java-框架-SpringSecurity】单点登录(认证和授权)- 随笔

项目文件&#xff1b; 【1】 预览 文件 文件01 名称 pom.xml&#xff1b; 内容 &#xff08;01&#xff09;总的 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http:…

Python实现两因素独立设计方差分析,简单效应分析

# Python实现两因素独立设计方差分析 1. 背景 1. 有研究者探讨了在不同企业文化下&#xff0c;管理者的不同语言风格所产生的影响 有的企业注重员工的独立性&#xff0c;强调个人努力和内部竞争&#xff1b;有的企业注重员工的整体性&#xff0c;强调团队合作和团队绩效。 …

数据结构·单链表

不可否认的是&#xff0c;前几节我们讲解的顺序表存在一下几点问题&#xff1a; 1. 中间、头部的插入和删除&#xff0c;需要移动一整串数据&#xff0c;时间复杂度O(N) 2. 增容需要申请新空间&#xff0c;拷贝数据&#xff0c;释放旧空间。会有不小的消耗 3. 增容一般是2倍的增…

Linux——理解文件系统

目录 1、inode 2、硬链接、软链接 理解硬链接 软链接 3、静态库、动态库 静态库与动态库 生成静态库 生成动态库 使用动态库 运行动态库 使用外部库 库文件名称和引入库的名称 1、inode 使用ls -l命令不仅显示出了文件名&#xff0c;也可以显示出文件元数据 一行…

Spring 的 IOC 和 AOP

题目 Spring 的 IOC 和 AOP 推荐解析 IOC 是什么&#xff1f; IoC&#xff08;Inversion of Control&#xff09; 控制反转&#xff0c;是一种常见的设计思想&#xff0c;主要就是将手动创建对象的控制权&#xff0c;交给 Spring 框架来管理。 为什么需要存在一个容器&…