Python小程序练习---敏感词测试
来源:互联网 发布:python hashlib 编辑:程序博客网 时间:2024/06/03 01:13
小程序需求说明
敏感词文本文件 filtered_words.txt,里面的内容为以下内容:
北京程序员公务员领导牛比牛逼你娘你妈lovesexjiangge
当用户输入敏感词语时,则打印出 Freedom,否则打印出 Human Rights。
思路及程序编写
###流程敲定:# 1. 用户输入一句话# 2. 检查里面没有没有敏感词汇# 2.1 将敏感词汇读取出来。使用readline(),或者直接使用文件管理器。# 2.2 检测用户输入是否含有敏感词 in# 3.判断是否有后进行反应##user_input=input('Please say something:')print(user_input)for filter_word in open('filtered_words.txt'): #这里碰到一个东西就是,使用open()文件迭代器的方法,会自动在读取的对象后面增加一个跨行符号\n , #所以这里需要一个rstrip()去掉右边的跨行符。 if filter_word.rstrip() in user_input: print('Freedom!') breakelse: print('Human Rights!')#如果不使用跨行符,那么结果就是 filter_word in user_input 永远是false, Freedom不会被打印。#下面示范没有rstrip()的形式。print('这是分割线,哦啦啦啦啦')user_input=input('Please say something:')print(user_input)for filter_word in open('filtered_words.txt'): if filter_word in user_input: print('Freedom!') breakelse: print('Human Rights!')
执行后的输出
Please say something:sexysexyFreedom!这是分割线,哦啦啦啦啦Please say something:sexysexyHuman Rights!
小结(always continue…)
整个小程序的重点:
1.文件的读取。
这里我们使用了文件迭代器:
for col in open('文件名')
在使用文件迭代器的时候,我们需要直到,每次迭代是按照行来读取,并且读取的内容后面会有一个跨行符号。
移除跨行符号我们有多种方法,常见的有:
- 分片
- strip,lstrip,rstrip
这里我们推荐rstrip方法,因为分片即使最后没有跨行符,也会让其少一截。
#使用分片去除跨行符(空格同理)>>> s='abcd\n'>>> print(s)abcd>>> print(s[:-1])abcd>>> s='abcd'>>> print(s[:-1])abc>>>
2.判断时候含有敏感词
这个时候就用到了成员测试in 就可以轻松解决。
小程序其他方案
1.读取文件方面,我们还可以readline(),不过文件迭代器是按照行读取文件的最方便的方法。
小程序测试来自于
0 0
- Python小程序练习---敏感词测试
- Python小程序练习---敏感词替换成*星号
- python练习小程序
- python小程序练习
- python tkinter练习小程序
- java 基础练习-编写敏感词过滤程序
- python学习之小的练习程序
- Python 练习册,每天一个小程序
- Python 练习册,每天一个小程序
- Python 练习册,每天一个小程序
- Python 练习册,每天一个小程序
- python之自练习小程序(循环)
- python练习--休息一下小程序
- python 敏感词过滤
- python过滤敏感词
- Windows驱动开发小练习-Lookaside测试程序
- 敏感词过滤小程序,文中敏感词中间有空格,换行符的也可以处理
- Python 练习册,每天一个小程序(0000)
- SAP UI5里HTML跳转VIEW文件解析
- JAVA面向对象
- SURF特征提取
- 单一职责原则【 Single Responsibility Principle】
- cocos2d-x内存管理
- Python小程序练习---敏感词测试
- 深入理解机器学习:从理论到算法-习题全解之第十二章:凸学习问题
- 推荐好文-非常详细的Python正则表达式指南
- 【JZOJ2758】【SDOI2012】走迷宫(labyrinth)
- Redis学习笔记
- Android startActivity去掉自带的动画效果
- Vue.js 快速搭建
- 判断一个字符串编码是utf-8还是gbk
- android 不透明度16进制值