位置: 编程技术 - 正文

详解Python各大聊天系统的屏蔽脏话功能原理(python deque)

编辑:rootadmin

推荐整理分享详解Python各大聊天系统的屏蔽脏话功能原理(python deque),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python deque, python,python 这个你们了解过吗?,python deque,python大全,python python,python大全,python大全,内容如对您有帮助,希望把文章链接给更多的朋友!

突然想到一个视频里面弹幕被和谐的一满屏的*号觉得很有趣,然后就想用python来试试写写看,结果还真玩出了点效果,思路是首先你得有一个脏话存放的仓库好到时候检测,那么个人还是喜欢用列表,因为列表灵活使用扩展都很方便,有了脏话库我们在来想核心怎么屏蔽脏话,你要记得玩家输入的弹幕数据类型是什么首档其次是字符串如果没有特殊要求就它了,万变不离其中总是这几个数据结构嘛,有了字符串替换*号什么的都轻松许多了对吧,今天所聊的是完整的一套结构,为了让大家更清晰学会,我会拆分代码然后在组装起来讲,这样大家就会有个更深了了解首先来看看核心的功能替换脏话代码如下:

是不是简单轻松的就把脏话给屏蔽掉了呢,这导入了时间模块datetime用来获取现在本地时间,后面会用来写入日志保存,当然很多游戏对话里面也会显示当前时间,然后speak是玩家要输出的脏话(现在是演示后面会改成Input真正的输入交互),dirty是定义的脏话库(当然没写太多因为每地域都不同太多了写不完),后面跟一个for循环来检索,只要你说的话里面包含脏话库内,那么我们就用replace替换掉,最后打印也就等于公屏上显示的字幕都是*了...当然我们还要想那如何去跟踪是谁什么时间都说了什么,这样关联就要用到类了,肯定会有疑惑为什么用类,首先类class是一类(比如桌子有方桌、圆桌、会议桌、办公桌等)事物描述的概括,例如一群玩家Player,他们都有各自的游戏名字name,然后都具有聊天功能(我们又称之为动作),这样就既可以分类又可以达到区分的效果。代码如下:

详解Python各大聊天系统的屏蔽脏话功能原理(python deque)

这里就很全面的介绍了类的使用及工作流程效果,这里先创建一个类Player玩家类,init初始化他的名字name,其中他具备聊天功能talk,还具备日志记录功能,那么来聊天运作流程,每个玩家注册后登录游戏会有一个游戏名字(你可以理解为登录QQ后),这里self.name=name等于获取到你的个人名称(网名),然后打聊天窗口进入talk,self.string你输入的聊天信息,self.log记录日志,重点是优先把你原本的话记入到聊天日志中这样查可以查到你的记录,self.string.replace替换掉你说的脏话,那么屏幕上只会显示替换后的话语例如这打印的本来是fuck编程了雅蠛蝶...这个工作流程是不是很清晰了呢,当然你不了解类方法这里就会很迷糊了,慢慢来只要有这个思路学了类以后就很轻松了。当然不会这样就结束,最后把基本的完整代码放出来代码如下:

测试结果如下:

你可以新建一个文件名叫zanghua.txt空文本就行,只是用来演示存储日志的行为效果,上面打印说change Player是为了演示不同用户输入做了个简易切换,实际上的系统你登录后很少切换用户之类的,就只是当前帐号聊天了,这里的代码就添加文件处理方式with open (文件名,打开模式) 简称为 f之类的然后写入write(记得在写入的最后加上n换行符,不然全写第一行很难认)关于datetime[:7]切片 把上面打印时候时间后面的余数给忽略掉更简洁点。基本上的流程如此,当然可以有很多扩展,例如脏话次数超过多少禁止发言,限制发言几分钟啊,日志方面可以定时清空啊等等。这就看大家自己去研究了,代码量就有点大了这里就不展示了。

标签: python deque

本文链接地址:https://www.jiuchutong.com/biancheng/383413.html 转载请保留说明!

上一篇:python模块简介之有序字典(OrderedDict)(python模块怎么用)

下一篇:win与linux系统中python requests 安装(linux和windows互ping)

  • 二手车经纪公司和中介的区别
  • 税收实体法和程序法分类
  • 税收优惠指什么
  • 家庭保洁服务价格表
  • 采购成本和销售费用区别
  • 分公司可以用总公司的业绩吗
  • 收取境外技术服务费如何
  • 非金融单位贷款利息收入列示什么科目
  • 小规模纳税人开票税率
  • 带息负债融资成本
  • 出口退税申报无电子信息
  • 在建工程购入的空调怎样入账
  • 土地使用权摊销的会计分录
  • 税收编码名称是什么
  • 工会经费用于什么
  • 增值税进项和销项税的计算方法
  • 个人所得税承租承包经营所得
  • 防暑降温用品进什么科目
  • linux耳机插拔检测
  • u盘写入扇区错误
  • 电脑怎么一键返回到桌面
  • 发票已认证还未开票
  • excel中怎么截取
  • php计算时间
  • 如何使用vim创建文件
  • 进货返利怎么入账
  • 建筑业预缴增值税
  • yolov5训练参数说明
  • 悬崖徒步
  • Vue3通透教程【三】Vue3代码初体验找不同
  • linux 高并发网络编程
  • 帝国cms功能
  • 人工费和劳务费怎么算
  • 为什么开发票能抵税
  • 固定资产包括无形资产吗?
  • 营业执照如何申请移出异常
  • 人力资源公司代办
  • 二季度报表是累计数吗
  • distinct用法及搭配
  • 建筑工程承包合同
  • 工程的直接成本包括哪些内容
  • 房产税的计算方式
  • 加盟费收入如何入账
  • 公司股东可以买公司股票吗
  • 利润相关计算公式是什么
  • 收到社保局返还的各类社保款项应从哪个表单发起
  • 验资户和基本户账号一致么
  • 开公司合理避税的方法
  • 非金融企业间借款利息开票税率
  • 出口转内销进项税额怎么进附表二
  • MySQL replace into 语句浅析(一)
  • 最全的sql执行顺序
  • mysql怎么创建储存过程
  • win8.1无法进入系统
  • wysafe.exe是什么
  • 苹果mac怎么复制文字
  • windows无法更改设置
  • win10升级20h
  • 虚拟网卡在哪里设置
  • win7设置宽带拨号
  • 关闭windows怎么关
  • pap是什么文件
  • unix2dos linux实现
  • qt底层绘图引擎
  • js按位运算符
  • nodejs最佳实践
  • jquery操作
  • unity方法大全
  • nodejs 函数
  • nodejs开发web
  • zigzag源码
  • 用python写爬虫
  • unity ui批处理
  • [置顶]马粥街残酷史
  • unity教程 知乎
  • opencvandroid开发实战
  • python html转markdown
  • 陕西电子税务电话是多少
  • 湖北中税网控股股份有限公司
  • 买新车还要交套餐费吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设