位置: 编程技术 - 正文

详解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)

  • 增值税的附加税比例
  • 增值税延期滞纳金是多少
  • 对公账户转账给法人用途写什么
  • 离职补偿金入账
  • 房地产开发公司排名
  • 新公司成立后需要办理导航业务吗
  • 企业没有收入怎么办
  • 采购退回的分录
  • 收到返还利润可以抵扣吗
  • 车间领用低值易耗品记账凭证
  • 行政相对人和行政管理相对人的区别
  • 转让合同债权
  • 私立医院增值税税率是多少
  • 小企业会计准则主要按照什么计量
  • 企业合并三种方式
  • 收回应收账款资产为什么不变
  • 软件企业即征即退例题
  • 土地使用权出让金收费标准
  • 预计负债怎么计提递延所得税资产
  • 商品促销有关问题
  • 宿舍开店能开些啥
  • 怎么利用喜欢自己的人
  • 技术服务合同要盖骑缝章吗
  • win10系统如何设置开机启动软件
  • windows 11 正式
  • daio.dll 病毒
  • PHP:pg_connection_busy()的用法_PostgreSQL函数
  • php的递归
  • 小型企业的资产负债表
  • 会计费用科目分类表
  • vue的安装命令
  • 教案的近义词是什么
  • php中imagecreatefromjpeg
  • 以前年度损益调整结转到哪里
  • 财务费用的核算属于什么业务
  • 框架 frame
  • 担保合同印花税税率怎么算
  • uniapp 手写识别
  • nerf新手入门
  • php curl设置cookie
  • 有形动产租赁个税是经营所得吗
  • ftpd命令
  • 外管证预缴税款怎么做分录
  • 增值税负数要结转
  • 税务局清卡需要公章吗?
  • 一税两费减免政策
  • 资产负债表的种类
  • 公司注册地址变更有什么影响
  • win2008安装sql2008教程
  • 年终奖可以税前扣除吗
  • 旅行社小规模纳税人差额征税
  • 补交上年度企业所得税税额需要本年度纳税调增吗
  • 生产企业的生产许可证
  • 税金及附加是什么科目编号
  • 政府会计双核算模式的好处
  • 预收款开票后如何做账
  • 高工资的工资
  • 新注册的公司在企查查上查不到
  • 哪些费用是不可抵扣的
  • 交通运输业包含
  • 小规模公司购买汽车如何抵税
  • window 开机启动
  • 在cenots下使用iso光盘文件重新安装CentOS的方法步骤
  • windows8的ie浏览器在哪
  • win1020th2
  • windows 8
  • 微软内测
  • win10锁屏界面的搜索怎么关
  • linux系统怎么弄
  • windows执行bat脚本
  • 同一个文件夹中的文件可以同名吗
  • appendChild() 或 insertBefore()使用与区别介绍
  • nodejs基础
  • node中的事件循环
  • 冒烟测试和接口测试
  • 事前监督的名词解释
  • 江苏个体户年报怎么填
  • 网上缴费如何开票
  • 你认为作为一名护士应具备哪些素质
  • 中华人民共和国道路交通安全法
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设