iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >基于Python如何制作AI聊天软件
  • 451
分享到

基于Python如何制作AI聊天软件

2023-07-02 15:07:41 451人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍“基于python如何制作ai聊天软件”,在日常操作中,相信很多人在基于Python如何制作AI聊天软件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”基于Python如何制作AI聊天软件”的疑

这篇文章主要介绍“基于python如何制作ai聊天软件”,在日常操作中,相信很多人在基于Python如何制作AI聊天软件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”基于Python如何制作AI聊天软件”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

效果图

先看一下效果图

基于Python如何制作AI聊天软件

就当是女友无聊的时候自己抽不出时间的小分身吧!

需要用到的库

tkinter、time、urllib、requests

tkinter负责窗体、time显示时间、urllib和requests负责请求

窗体设计

from tkinter import *win1 = Tk()win1.geometry('400x644+100+100')win1.title('xxx男神的AI分身')Label11 = Label(win1, text='男神白', font=('黑体', 12), anchor='center').place(y=13, x=15, width=380, height=20)Entry11 = Entry(win1, font=('等线', 11), width = 70)Entry11.place(y=600, x=15, width=310, height=26)Button11 = Button(win1, text='发送', font=('等线', 11), command = mecha).place(y=598, x=328, width=65, height=30)console = Text(win1, font=('等线', 11))console.place(y=35, x=15, width=368, height=550)console.insert(1.0,'             欢迎来到你与男神的小天地!\n你可以把你想说的内容输入到下面的输入框哦\n')console.mark_set('markOne', 1.0)console.mark_set('markTwo', 3.0)console.tag_add('tag1', 'markOne', 'markTwo')console.tag_config('tag1', foreground='red')win1.bind("<Return>", test_fun)win1.mainloop()

函数

在txet部件上显示发送时间及颜色处理,使用requests和urllib库来调用接口处理回复你女朋友的信息。

def liaotian():    global b    import time    b = 3    def mecha():        global b        b+=2        console.insert('end',time.strftime('%Y-%m-%d %H:%M:%S', time.localtime()) + '\n')        console.insert('end',str(Entry11.get())+'\n')        console.mark_set(str(b-1), str(b-1)+'.0')        console.mark_set(str(b), str(b)+'.0')        console.tag_add(str(b), str(b-1), str(b))        console.tag_config(str(b), foreground='blue')        console.see(END)        console.update()        console.insert('end',time.strftime('%Y-%m-%d %H:%M:%S', time.localtime()) + '\n')        console.insert('end',aicha()+'\n')        console.mark_set(str(b-1), str(b-1)+'.0')        console.mark_set(str(b), str(b)+'.0')        console.tag_add(str(b), str(b-1), str(b))        console.tag_config(str(b), foreground='red')        console.see(END)        Entry11.delete(0,END)        console.update()    def test_fun(self):        mecha()    def aicha():        global b        b+=2        msg = str(Entry11.get())         else:            import urllib            import requests            def qingyunke(msg):                url = 'Http://api.qingyunke.com/api.PHP?key=free&appid=0&msg={}'.fORMat(urllib.parse.quote(msg))                html = requests.get(url)                return html.JSON()["content"]            print("原话>>", msg)            res = qingyunke(msg)            res = res.replace('菲菲', '你男神')            res = res.replace('我', '你男神')            print("智能回复>>", res)            return res

为粉丝们额外添加的功能

根据女友输入的内容自定义回复

我自己添加的内容太肉麻的,不太适合分享给你们哈。于是我就给你们做多了一个自定义回复的功能。嘿嘿!那就是独一无二的代码了

坚持着你们直接能使用代码不做任何修改的原则,我就不让你们在代码里面添加了,当你第一次运行此代码的时候会自动创建一个txt文件(甚至还不用让你创建文件),你就可以在txt文件中自定义回复内容了。

使用异常处理模块try来尝试open读取名为“自定义回复.txt”的文件,若不存在except就创建,若已存在直接读取即可。操作读取的字符串逐个添加到zidingyi字典中,判断输入的语句是否在zidingyi.keys()中即可做出相应回复。

添加后的效果图:

基于Python如何制作AI聊天软件

    zidingyi = {}    try:        with open("自定义回复.txt", "r", encoding='utf8') as f:            asd = f.readlines()            print(asd)            for line in asd:                line = line.strip('\n')                wen, da = line.split(':', 1)                zidingyi[wen] = da    except:        with open("自定义回复.txt", "w+", encoding='utf8') as f:            f.write('提示——>采用“输入:回复”格式   如——>你吃饭了吗?:我吃饭啦           回车以继续下一自定义回复(注意使用英文的冒号)')        with open("自定义回复.txt", "r", encoding='utf8') as f:            asd = f.readlines()            print(asd)            for line in asd[1:]:                line = line.strip('\n')                wen, da = line.split(':', 1)                zidingyi[wen] = da                print(line)    print(zidingyi)

完整代码

from tkinter import *  def liaotian():    global b    import time    b = 3     def mecha():        global b        b += 2        console.insert('end', time.strftime('%Y-%m-%d %H:%M:%S', time.localtime()) + '\n')        console.insert('end', str(Entry11.get()) + '\n')        console.mark_set(str(b - 1), str(b - 1) + '.0')        console.mark_set(str(b), str(b) + '.0')        console.tag_add(str(b), str(b - 1), str(b))        console.tag_config(str(b), foreground='blue')        console.see(END)        console.update()        console.insert('end', time.strftime('%Y-%m-%d %H:%M:%S', time.localtime()) + '\n')        console.insert('end', aicha() + '\n')        console.mark_set(str(b - 1), str(b - 1) + '.0')        console.mark_set(str(b), str(b) + '.0')        console.tag_add(str(b), str(b - 1), str(b))        console.tag_config(str(b), foreground='red')        console.see(END)        Entry11.delete(0, END)        console.update()     def test_fun(self):        mecha()     def aicha():        global b        b += 2        msg = str(Entry11.get())        if msg in zidingyi.keys():            res = zidingyi[msg]            return res        else:            import urllib            import requests            def qingyunke(msg):                url = 'http://api.qingyunke.com/api.php?key=free&appid=0&msg={}'.format(urllib.parse.quote(msg))                html = requests.get(url)                return html.json()["content"]             print("原话>>", msg)            res = qingyunke(msg)            res = res.replace('菲菲', '你男神')            res = res.replace('我', '你男神')            print("智能回复>>", res)            return res     zidingyi = {}    try:        with open("自定义回复.txt", "r", encoding='utf8') as f:            asd = f.readlines()            print(asd)            for line in asd:                line = line.strip('\n')                wen, da = line.split(':', 1)                zidingyi[wen] = da    except:        with open("自定义回复.txt", "w+", encoding='utf8') as f:            f.write('提示——>采用“输入:回复”格式   如——>你吃饭了吗?:我吃饭啦           回车以继续下一自定义回复(注意使用英文的冒号)')        with open("自定义回复.txt", "r", encoding='utf8') as f:            asd = f.readlines()            print(asd)            for line in asd[1:]:                line = line.strip('\n')                wen, da = line.split(':', 1)                zidingyi[wen] = da                print(line)    print(zidingyi)    win1 = Tk()    win1.geometry('400x644+100+100')    win1.title('男神的AI分身')    Label11 = Label(win1, text='你男神', font=('黑体', 12), anchor='center').place(y=13, x=15, width=380, height=20)    Entry11 = Entry(win1, font=('等线', 11), width=70)    Entry11.place(y=600, x=15, width=310, height=26)    Button11 = Button(win1, text='发送', font=('等线', 11), command=mecha).place(y=598, x=328, width=65, height=30)    console = Text(win1, font=('等线', 11))    console.place(y=35, x=15, width=368, height=550)    console.insert(1.0, '                   欢迎来到你与男神的小天地!\n      你可以把你想说的内容输入到下面的输入框哦\n')    console.mark_set('markOne', 1.0)    console.mark_set('markTwo', 3.0)    console.tag_add('tag1', 'markOne', 'markTwo')    console.tag_config('tag1', foreground='red')    win1.bind("<Return>", test_fun)    win1.mainloop()  liaotian()

到此,关于“基于Python如何制作AI聊天软件”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: 基于Python如何制作AI聊天软件

本文链接: https://www.lsjlt.com/news/342706.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 基于Python如何制作AI聊天软件
    这篇文章主要介绍“基于Python如何制作AI聊天软件”,在日常操作中,相信很多人在基于Python如何制作AI聊天软件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”基于Python如何制作AI聊天软件”的疑...
    99+
    2023-07-02
  • 基于Python制作AI聊天软件的示例代码
    目录效果图需要用到的库窗体设计函数为粉丝们额外添加的功能完整代码效果图 先看一下效果图 就当是女友无聊的时候自己抽不出时间的小分身吧! 需要用到的库 tkinter、time、ur...
    99+
    2024-04-02
  • python基于pyppeteer如何制作PDF文件
    这篇文章主要讲解了“python基于pyppeteer如何制作PDF文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python基于pyppeteer如何制作PDF文件”吧!Pyppete...
    99+
    2023-06-13
  • 基于小程序制作一个ChatGPT聊天机器人
    在AI技术日新月异的浪潮中,将ChatGPT与实战开发相结合,制作一个随身携带的聊天机器人,紧贴前沿的同时稳固基础。 一、前言 1.1、什么是ChatGPT 1.2、什么是文本完成 ...
    99+
    2023-08-30
    chatgpt 机器人 微信小程序 原力计划
  • Node.js如何制作简单聊天室
    小编给大家分享一下Node.js如何制作简单聊天室,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!示例代码如下:var ...
    99+
    2024-04-02
  • 基于websocket如何实现聊天室对话
    这篇文章主要介绍了基于websocket如何实现聊天室对话,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下首先搭建一个node的环境,在app.js中写入以下代码n...
    99+
    2023-06-20
  • 怎么用Python制作天气查询软件
    本篇内容主要讲解“怎么用Python制作天气查询软件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Python制作天气查询软件”吧!这次的Python学习资料跟大家分享如何用Python做...
    99+
    2023-06-02
  • python基于pyppeteer制作PDF文件
    目录Pyppeteer 是什么Pyppeteer能做什么截图导出PDF公众号链接导出PDF示例Pyppeteer 是什么 介绍 Pyppeteer 之前,有必要先介绍一下 Pupp...
    99+
    2024-04-02
  • 如何使用Python开发基于ChatGPT的聊天机器人
    如何使用Python开发基于ChatGPT的聊天机器人随着人工智能的不断进步,聊天机器人已经成为了许多网站和应用程序的常见功能。而ChatGPT(Generative Pre-trained Transformer)是OpenAI开发的一种...
    99+
    2023-10-24
    聊天机器人 ChatGPT Python
  • 蓝牙聊天App设计1:Android Studio制作蓝牙聊天通讯软件(UI界面设计)
    前言:蓝牙聊天App设计全部有三篇文章(一、UI界面设计,二、蓝牙搜索配对连接实现,三、蓝牙连接聊天),这篇文章是一、UI界面设计 课程1:Android Studio小白安装教程,以及第一个Android项目案例“Hello World”...
    99+
    2023-08-16
    android studio android ui
  • 微信小程序|基于小程序+C#制作一个聊天系统
    此文主要基于小程序+C#使用WebSocket制作一个聊天系统,基本实现小程序与服务端的聊天功能。用小程序自带的客服功能只能绑定微信且一对一沟通,接入市面上成熟的即时通讯预算又略显不足,干脆自己开...
    99+
    2023-09-04
    小程序 windows 微信小程序 聊天 websocket
  • C#如何基于Socket实现多人聊天功能
    这篇文章主要介绍C#如何基于Socket实现多人聊天功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体内容如下服务器服务器负责接受所有客户端发来的消息,和将接受到的问题群发到其他用户。代码:using ...
    99+
    2023-06-29
  • Java基于TCP如何实现简单聊天程序
    本篇内容介绍了“Java基于TCP如何实现简单聊天程序”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、如何实现TCP通信要实现TCP通信需...
    99+
    2023-06-29
  • 基于Python+OpenCV如何制作屏幕录制工具
    这篇文章跟大家分析一下“基于Python+OpenCV如何制作屏幕录制工具”。内容详细易懂,对“基于Python+OpenCV如何制作屏幕录制工具”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着小编...
    99+
    2023-06-26
  • 如何使用C#基于WebSocket实现聊天室功能
    这篇文章将为大家详细讲解有关如何使用C#基于WebSocket实现聊天室功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。ServerHelper:using System;using ...
    99+
    2023-06-29
  • 基于Python制作天眼查小程序的示例代码
    目录界面搭建整体布局界面美化天眼查爬虫获取信息代码编写结果展示今天我们一起来制作一个天眼查GUI程序,开宗明义,我们先来看下最终的效果 这次的GUI程序,我们使用的框架是PyQt5...
    99+
    2024-04-02
  • 如何理解Python-Wechaty: 面向IM软件的聊天机器人框架
    这篇文章主要讲解了“如何理解Python-Wechaty: 面向IM软件的聊天机器人框架”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何理解Python-Wechaty: 面向IM软件的聊...
    99+
    2023-06-15
  • 如何制作IconWorkshop软件下载
    这篇文章主要介绍“如何制作IconWorkshop软件下载”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何制作IconWorkshop软件下载”文章能帮助大家解决...
    99+
    2024-04-02
  • 如何制作bat批处理和任意QQ号聊天!
    这篇文章主要介绍如何制作bat批处理和任意QQ号聊天!,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体操作方法是:按“开始→程序→附件→记事本”,把下面蓝色的文字复制进去,点“文件-另存为”,路径选“桌面”,选保存...
    99+
    2023-06-09
  • 如何使用C#基于Socket的TCP通信实现聊天室
    这篇文章给大家分享的是有关如何使用C#基于Socket的TCP通信实现聊天室的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下一.Socket(套接字)通信概念套接字(socket)是通信的基石,用于描述...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作