1.概述

最近,比较火热的ChatGPT很受欢迎。今天,笔者为大家来介绍一下ChatGPT能做哪些事情。

2.内容

ChatGPT是一款由OpenAI开发的专门从事对话的AI聊天机器人。它的目标是让AI系统更加自然的与之交互,但它也可以在我们编写代码的时候提供一些帮助。

2.1 使用ChatGPT来绘制线性回归

如果你想绘制线性回归,你可以简单的告诉ChatGPT:使用 matplotlib 用 Python 绘制线性回归

接下来,ChatGPT对话框内就会给你听绘制线性回归的步骤和实现代码,如下如所示:

我们使用这段代码,来执行看看最终的结果,代码如下:

import matplotlib.pyplot as plt
import numpy as np # 准备数据
x = np.array([1, 2, 3, 4, 5])
y = np.array([1, 2, 1.5, 3, 2.5]) # 绘制散点图
plt.scatter(x, y) # 计算线性回归模型
slope, intercept = np.polyfit(x, y, 1) # 绘制线性回归直线
plt.plot(x, slope * x + intercept, color='r') # 添加 x 轴、y 轴和图标题
plt.xlabel('X')
plt.ylabel('Y')
plt.title('Linear Regression') # 显示图像
plt.show()

执行结果如下所示:

这里需要注意是,如果执行代码出现如下错误:

Non-ASCII character '\xe5'

可以在代码开头里面添加如下代码:

# -*- coding: UTF-8 -*-

这个任务是比较简单的,接下来我们来提升一下难度。

2.2 使用Python给微信发信息

然后,我们在ChatGPT对话框中输入:使用Python给微信发信息

ChatGPT给出解决方案如下图所示:

2.3 使用Python发送电子邮件

我们使用搜索引擎寻找相关发送邮件的代码片段,搜索出来的结果可能会有很多代码片段展示如何使用Python发送电子邮件。我们可以使用ChatGPT来更具体一些,比如我们输入:从“email_1”发送一封电子邮件到“email_2”,主题为“ChatGPT 发送的电子邮件”,内容为“ChatGPT Test Email!” 使用 Python

然后,ChatGPT给出的解决方案如下图所示:

实现代码如下所示:

import smtplib

# 创建 SMTP 客户端对象
smtp_client = smtplib.SMTP('smtp.example.com') # 连接到邮件服务器
smtp_client.login('email_1', 'password') # 发送电子邮件
smtp_client.sendmail(
'email_1',
'email_2',
'Subject: ChatGPT Send Email\n\nChatGPT Test Email!'
) # 关闭客户端
smtp_client.quit()

2.4 使用Python开发一个爬虫程序

使用ChatGPT最有难度的应该就是抓取网站信息,因为网站具有不同的HTML,因此抓取网站的步骤因站点而异。这里我们抓取Scrape上的商品名称和价格,在ChatGPT输入关键字:Python抓取https://books.toscrape.com/商品名称和价格

ChatGPT给出的解决方案如下所示:

实现代码如下所示:

import requests
from bs4 import BeautifulSoup # 发送 HTTP 请求并获取网页内容
response = requests.get('https://books.toscrape.com/')
html = response.text # 使用 BeautifulSoup 解析 HTML
soup = BeautifulSoup(html, 'html.parser') # 提取商品名称和价格信息
items = soup.find_all('h3')
prices = soup.find_all('p', class_='price_color') # 遍历商品信息,打印商品名称和价格
for item, price in zip(items, prices):
print(item.text, price.text)

执行上述Python代码,抓取结果如下所示:

无需编写代码,即可通过ChatGPT生成来获取数据。

3.总结

ChatGPT是基于GPT-3模型的衍生品,因为这一点ChatGPT也被称为GPT-3.5。ChatGPT背后的训练除了常规的万亿级语料支持之前,还依赖了更为强大的算力。这也使得ChatGPT可以在不断积累数据的同时,通过不断的强化训练,让自己变得更加智能。另外,ChatGPT和其他搜索引擎就相同的问题进行检索,通过对比发现ChatGPT往往可以给出用户最想要的答案,并且呈现的方式也非常的直接,如ChatGPT可以根据用户编程的需求直接生成代码,同时也可以帮助用户检索已有代码存在的错误。而面对同样的问题其他搜索引擎却只能给用户提供一堆网页链接,需要用户花费更多的时间来筛选出自己想要的答案。从时间成本和效率上ChatGPT无疑比现有的一些搜索引擎更有优势。

如何使用ChatGPT来自动化Python任务的更多相关文章

  1. 软件测试自动化…python学习到什么程度?代码好不好学!

    软件测试自动化…python学习到什么程度?代码好不好学! 如下:

  2. WEB自动化(Python+selenium)的API

    在做Web自动化过程中,汇总了Python+selenium的API相关方法,给公司里的同事做了第二次培训,分享给大家                                         ...

  3. 接口自动化python

    !/usr/bin/env python coding=utf-8 Todo:接口自动化测试 Author:归根落叶 Blog:http://this.ispenn.com import json i ...

  4. 接口自动化-python unittest+requests+HTMLrunner

    从2015年毕业入行软件测试,快满4年了,之前技术分享都在百度贴吧上面,现在正式开始在博客中记录工作技术,努力成长,加油 接口测试的步骤1.组装好该接口需要的参数数据2.使用get或post附带参数数 ...

  5. 接口自动化-python+requests+pytest+csv+yaml

    本套代码和逻辑 是本人的劳动成果,如果有转载需要标注, 非常适合公司做项目的同学!!!小白也可以学哦! 1.项目目录  2.公共方法的封装 2.1如果不用配置文件 可以使用这个方法进行封装--但是有一 ...

  6. 移动端穿插着PC端自动化-Python基础(干货)

    1.前面已经把所有前期工作完成了 下面进行一些简单的小脚本来更好的了解Python.对Python有一些基础的童鞋理解起来会比较容易,我刚接触的时候也会有点懵的,现在简单的也是没问题了. 大牛请不要喷 ...

  7. 自动化-python介绍与基础

    1.1-python的介绍: 简单点来说吧,python这玩意儿是一个叫做Guido van Rossum的程序猿在1989年的圣诞打发时间而决心去开发的一个脚本编程语言.它之前的名字是以abc语言的 ...

  8. web端自动化——python多线程

    Python通过两个标准库thread和threading提供对线程的支持.thread提供了低级别的.原始的线程以及一个简单的锁.threading基于Java的线程模型设计. 锁(Lock)条件变 ...

  9. web端自动化——Python的smtplib发送电子邮件

    SMTP (Simple Mail Transfer Protocol)是简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. Python的smtplib模块提 ...

  10. web端自动化——Python读取txt文件、csv文件、xml文件

    1.读取txt文件 txt文件是我们经常操作的文件类型,Python提供了以下几种读取txt文件的方式. 1)read(): 读取整个文件. 2)readline(): 读取一行数据. 3)readl ...

随机推荐

  1. vue禁用浏览器返回键

    mounted () { // 禁用浏览器返回键 history.pushState(null, null, document.URL); window.addEventListener('popst ...

  2. 2022.9.10-2022.9.12 Java第一次课总结

    本节课中的问题总结如下: 1.Java的基本运行单位是类还是方法? 答:Java的基本运行单位是类. 2.类由什么组成? 答:类由变量/方法/属性/事件等部分组成,其中方法就是我们所熟悉的函数,属性即 ...

  3. java中的自动拆装箱与缓存(Java核心技术阅读笔记)

    最近在读<深入理解java核心技术>,对于里面比较重要的知识点做一个记录! 众所周知,Java是一个面向对象的语言,而java中的基本数据类型却不是面向对象的!为了解决这个问题,Java为 ...

  4. 常用Linux命令(常年更新)

    Linux后台运行脚本: nohup python -u test.py > out.log 2>&1 & nohup sh **.sh > /dev/null 2& ...

  5. packet Capture 手机抓包工具

    packet Capture packet Capture 是一款免root的app, 运行在安卓平台上,用于捕获http/https网络流量嗅探的应用程序 特点: 捕获网络数据包,并记录太慢,使用中 ...

  6. 如何判断多个url的状态 即是否能成功访问?

    假设我们所有的url在excel种我们可以用loadwork 这个库 遍历所有的url 放入 列表 再通过request 或者 httpx 来判断 这个网址status_code 进而放入mongo种 ...

  7. 成熟企业级开源监控解决方案Zabbix6.2关键功能实战-上

    @ 目录 概述 定义 监控作用 使用理解 监控对象和指标 架构组成 常用监控软件分析 版本选型 俗语 安装 部署方式 部署 zabbix-agent 概述 定义 Zabbix 官网地址 https:/ ...

  8. C语言白盒测试讲义

    好久没有做过C语言的白盒测试了,估计以后也没这个机会.把自己之前参加过的培训素材做个分享. 素材下载链接:https://pan.baidu.com/s/1LPD9Az04zEj8RuCICaKYxQ ...

  9. Java反应式编程(1)

    您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来- 前面把Java函数式编程的由来和最主要的核心知识点讲完了.包括比较难懂的Lambda表达式是怎么演变而来的也全部都撸了一遍.Lambda表达式这 ...

  10. std C++11 生成随机数组

    #include <algorithm> #include <array> #include <iostream> #include <iterator> ...